|
|
@@ -702,28 +702,27 @@ static int __init virtio_vsock_init(void)
|
|
|
if (!virtio_vsock_workqueue)
|
|
|
return -ENOMEM;
|
|
|
|
|
|
- ret = register_virtio_driver(&virtio_vsock_driver);
|
|
|
+ ret = vsock_core_init(&virtio_transport.transport);
|
|
|
if (ret)
|
|
|
goto out_wq;
|
|
|
|
|
|
- ret = vsock_core_init(&virtio_transport.transport);
|
|
|
+ ret = register_virtio_driver(&virtio_vsock_driver);
|
|
|
if (ret)
|
|
|
- goto out_vdr;
|
|
|
+ goto out_vci;
|
|
|
|
|
|
return 0;
|
|
|
|
|
|
-out_vdr:
|
|
|
- unregister_virtio_driver(&virtio_vsock_driver);
|
|
|
+out_vci:
|
|
|
+ vsock_core_exit();
|
|
|
out_wq:
|
|
|
destroy_workqueue(virtio_vsock_workqueue);
|
|
|
return ret;
|
|
|
-
|
|
|
}
|
|
|
|
|
|
static void __exit virtio_vsock_exit(void)
|
|
|
{
|
|
|
- vsock_core_exit();
|
|
|
unregister_virtio_driver(&virtio_vsock_driver);
|
|
|
+ vsock_core_exit();
|
|
|
destroy_workqueue(virtio_vsock_workqueue);
|
|
|
}
|
|
|
|