IB/rxe: Fix a memory leak in rxe_qp_cleanup()
authorBart Van Assche <bart.vanassche@sandisk.com>
Thu, 15 Dec 2016 16:15:07 +0000 (17:15 +0100)
committerDoug Ledford <dledford@redhat.com>
Sun, 18 Dec 2016 18:35:19 +0000 (13:35 -0500)
A socket is associated with every QP by the rxe driver but sock_release()
is never called. Add a call to sock_release() in rxe_qp_cleanup().

Fixes: commit 8700e3e7c48A5 ("Add Soft RoCE driver")
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
Cc: Moni Shoua <monis@mellanox.com>
Cc: Kamal Heib <kamalh@mellanox.com>
Cc: Amir Vadai <amirv@mellanox.com>
Cc: Haggai Eran <haggaie@mellanox.com>
Cc: <stable@vger.kernel.org>
Reviewed-by: Moni Shoua <monis@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/sw/rxe/rxe_qp.c

index b8036cfbce04041d77a3679979ed5def0d9a0b46..4b6e455e72a1eca463782029dc48d8e234614e80 100644 (file)
@@ -853,4 +853,5 @@ void rxe_qp_cleanup(void *arg)
        free_rd_atomic_resources(qp);
 
        kernel_sock_shutdown(qp->sk, SHUT_RDWR);
+       sock_release(qp->sk);
 }