Skip to content

Commit aab0951

Browse files
sudhakar-dindukurtigerd-rausch
authored andcommitted
rds_ib_exits() should free the rds_ib_inet_socket kernel socket
RDS RDMA module allcoates a kernel socket during initialization but never frees the socket. This patch deallcoates the scoket during rds_ib_exit() Orabug: 27884217 Reviewed-by: Avinash Repaka <[email protected]> Signed-off-by: Sudhakar Dindukurti <[email protected]> Signed-off-by: Somasundaram Krishnasamy <[email protected]>
1 parent 873a78a commit aab0951

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

net/rds/ib.c

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -617,7 +617,7 @@ int rds_ib_init(void)
617617

618618
ret = rds_ib_fmr_init();
619619
if (ret)
620-
goto out;
620+
goto kernel_sock;
621621

622622
ret = rds_ib_sysctl_init();
623623
if (ret)
@@ -656,6 +656,9 @@ int rds_ib_init(void)
656656
rds_ib_sysctl_exit();
657657
out_fmr_exit:
658658
rds_ib_fmr_exit();
659+
kernel_sock:
660+
sock_release(rds_ib_inet_socket);
661+
rds_ib_inet_socket = NULL;
659662
out:
660663
return ret;
661664
}
@@ -672,6 +675,11 @@ void rds_ib_exit(void)
672675
destroy_workqueue(rds_aux_wq);
673676
rds_trans_unregister(&rds_ib_transport);
674677
rds_ib_fmr_exit();
678+
679+
if (rds_ib_inet_socket) {
680+
sock_release(rds_ib_inet_socket);
681+
rds_ib_inet_socket = NULL;
682+
}
675683
}
676684

677685
struct rds_transport rds_ib_transport = {

0 commit comments

Comments
 (0)