Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a56c79cf authored by Sagi Grimberg's avatar Sagi Grimberg Committed by Jens Axboe
Browse files

nvme-rdma: fix module_init (theoretical) error path



If nvmf_register_transport happened to fail
(it can't, but theoretically) we leak memory.

Signed-off-by: default avatarSagi Grimberg <sagi@grimberg.me>
Signed-off-by: default avatarJens Axboe <axboe@fb.com>
parent 2ca0786d
Loading
Loading
Loading
Loading
+13 −5
Original line number Diff line number Diff line
@@ -2030,14 +2030,22 @@ static int __init nvme_rdma_init_module(void)
		return -ENOMEM;

	ret = ib_register_client(&nvme_rdma_ib_client);
	if (ret) {
	if (ret)
		goto err_destroy_wq;

	ret = nvmf_register_transport(&nvme_rdma_transport);
	if (ret)
		goto err_unreg_client;

	return 0;

err_unreg_client:
	ib_unregister_client(&nvme_rdma_ib_client);
err_destroy_wq:
	destroy_workqueue(nvme_rdma_wq);
	return ret;
}

	return nvmf_register_transport(&nvme_rdma_transport);
}

static void __exit nvme_rdma_cleanup_module(void)
{
	nvmf_unregister_transport(&nvme_rdma_transport);