]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
RDS: Don't destroy the rdma id until after we're dong using it
authorChris Mason <chris.mason@oracle.com>
Fri, 3 Feb 2012 16:09:07 +0000 (11:09 -0500)
committerMukesh Kacker <mukesh.kacker@oracle.com>
Tue, 7 Jul 2015 23:41:32 +0000 (16:41 -0700)
During connection resets, we are destroying the rdma id too soon.
This moves it to after we clear the rings

Signed-off-by: Chris Mason <chris.mason@oracle.com>
Signed-off-by: Bang Nguyen <bang.nguyen@oracle.com>
net/rds/ib_cm.c

index 3c60740fd18e82797a4842497cec470e9e03f5b7..cdd30c19454dcaa09631f17febfc142f16439868 100644 (file)
@@ -780,7 +780,6 @@ void rds_ib_conn_shutdown(struct rds_connection *conn)
                        ib_destroy_cq(ic->i_rcq);
                if (ic->i_scq)
                        ib_destroy_cq(ic->i_scq);
-               rdma_destroy_id(ic->i_cm_id);
 
                /* then free the resources that ib callbacks use */
                if (ic->i_send_hdrs)
@@ -806,6 +805,8 @@ void rds_ib_conn_shutdown(struct rds_connection *conn)
                if (ic->i_recvs)
                        rds_ib_recv_clear_ring(ic);
 
+               rdma_destroy_id(ic->i_cm_id);
+
                /*
                 * Move connection back to the nodev list.
                 */