mirror of
https://github.com/clearlinux/kvmtool.git
synced 2026-06-15 18:05:49 +00:00
kvm tools: virtio-bln init/exit
Make the init/exit of virtio-balloon self-contained, so the global init code won't need to check if it was selected or not. Signed-off-by: Sasha Levin <levinsasha928@gmail.com> Signed-off-by: Pekka Enberg <penberg@kernel.org>
This commit is contained in:
+9
-2
@@ -1136,8 +1136,11 @@ static int kvm_cmd_run_init(int argc, const char **argv)
|
||||
goto fail;
|
||||
}
|
||||
|
||||
if (kvm->cfg.balloon)
|
||||
virtio_bln__init(kvm);
|
||||
r = virtio_bln__init(kvm);
|
||||
if (r < 0) {
|
||||
pr_err("virtio_rng__init() failed with error %d\n", r);
|
||||
goto fail;
|
||||
}
|
||||
|
||||
if (!kvm->cfg.network)
|
||||
kvm->cfg.network = DEFAULT_NETWORK;
|
||||
@@ -1287,6 +1290,10 @@ static void kvm_cmd_run_exit(int guest_ret)
|
||||
if (r < 0)
|
||||
pr_warning("virtio_rng__exit() failed with error %d\n", r);
|
||||
|
||||
r = virtio_bln__exit(kvm);
|
||||
if (r < 0)
|
||||
pr_warning("virtio_bln__exit() failed with error %d\n", r);
|
||||
|
||||
r = virtio_console__exit(kvm);
|
||||
if (r < 0)
|
||||
pr_warning("virtio_console__exit() failed with error %d\n", r);
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
|
||||
struct kvm;
|
||||
|
||||
void virtio_bln__init(struct kvm *kvm);
|
||||
int virtio_bln__init(struct kvm *kvm);
|
||||
int virtio_bln__exit(struct kvm *kvm);
|
||||
|
||||
#endif /* KVM__BLN_VIRTIO_H */
|
||||
|
||||
+11
-1
@@ -243,8 +243,11 @@ struct virtio_ops bln_dev_virtio_ops = (struct virtio_ops) {
|
||||
.get_size_vq = get_size_vq,
|
||||
};
|
||||
|
||||
void virtio_bln__init(struct kvm *kvm)
|
||||
int virtio_bln__init(struct kvm *kvm)
|
||||
{
|
||||
if (!kvm->cfg.balloon)
|
||||
return 0;
|
||||
|
||||
kvm_ipc__register_handler(KVM_IPC_BALLOON, handle_mem);
|
||||
kvm_ipc__register_handler(KVM_IPC_STAT, virtio_bln__print_stats);
|
||||
|
||||
@@ -256,4 +259,11 @@ void virtio_bln__init(struct kvm *kvm)
|
||||
|
||||
if (compat_id == -1)
|
||||
compat_id = virtio_compat_add_message("virtio-balloon", "CONFIG_VIRTIO_BALLOON");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int virtio_bln__exit(struct kvm *kvm)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user