mirror of https://github.com/proxmox/mirror_qemu
vhost: fail backend intialization early
Don't initialize vhost backend if memslots number exceeds the supported limit. This prevents failures down the road when backend is actually started. [MST: rewrite commit log] Signed-off-by: Igor Mammedov <imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>master
parent
3fad87881e
commit
aebf81680b
|
@ -933,6 +933,12 @@ int vhost_dev_init(struct vhost_dev *hdev, void *opaque,
|
||||||
return -errno;
|
return -errno;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (used_memslots > hdev->vhost_ops->vhost_backend_memslots_limit(hdev)) {
|
||||||
|
fprintf(stderr, "vhost backend memory slots limit is less"
|
||||||
|
" than current number of present memory slots\n");
|
||||||
|
close((uintptr_t)opaque);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
QLIST_INSERT_HEAD(&vhost_devices, hdev, entry);
|
QLIST_INSERT_HEAD(&vhost_devices, hdev, entry);
|
||||||
|
|
||||||
r = hdev->vhost_ops->vhost_call(hdev, VHOST_SET_OWNER, NULL);
|
r = hdev->vhost_ops->vhost_call(hdev, VHOST_SET_OWNER, NULL);
|
||||||
|
|
Loading…
Reference in New Issue