summaryrefslogtreecommitdiff
path: root/drivers/vfio/vfio_main.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/vfio/vfio_main.c')
-rw-r--r--drivers/vfio/vfio_main.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/vfio/vfio_main.c b/drivers/vfio/vfio_main.c
index 662e267a3e13..7f88569c3eba 100644
--- a/drivers/vfio/vfio_main.c
+++ b/drivers/vfio/vfio_main.c
@@ -1832,6 +1832,10 @@ static int __init vfio_init(void)
if (ret)
return ret;
+ ret = vfio_virqfd_init();
+ if (ret)
+ goto err_virqfd;
+
/* /dev/vfio/$GROUP */
vfio.class = class_create(THIS_MODULE, "vfio");
if (IS_ERR(vfio.class)) {
@@ -1862,6 +1866,8 @@ err_dev_class:
class_destroy(vfio.class);
vfio.class = NULL;
err_group_class:
+ vfio_virqfd_exit();
+err_virqfd:
vfio_container_cleanup();
return ret;
}
@@ -1876,6 +1882,7 @@ static void __exit vfio_cleanup(void)
class_destroy(vfio.device_class);
vfio.device_class = NULL;
class_destroy(vfio.class);
+ vfio_virqfd_exit();
vfio_container_cleanup();
vfio.class = NULL;
xa_destroy(&vfio_device_set_xa);