From c549807c23d6915c69a96d9b86af53605c94bc1b Mon Sep 17 00:00:00 2001 From: Raghavendra G Date: Sat, 12 Mar 2011 01:08:34 +0000 Subject: rpc-transport/rdma: handle cases where peer is NULL in send_completion. - There can be valid cases where peer is NULL - For eg., race b/w pollin received on handshake socket and as a result transport getting disconnected and handling of a send/recv completion on the same qp for some previous read/write - in send/recv_completion_process. Hence we should be checking for a valid peer pointer before accessing it. Signed-off-by: Raghavendra G Signed-off-by: Vijay Bellur BUG: 2514 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2514 --- rpc/rpc-transport/rdma/src/rdma.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rpc/rpc-transport/rdma/src/rdma.c b/rpc/rpc-transport/rdma/src/rdma.c index 8084a86e9..633f57db5 100644 --- a/rpc/rpc-transport/rdma/src/rdma.c +++ b/rpc/rpc-transport/rdma/src/rdma.c @@ -3463,7 +3463,7 @@ rdma_handle_successful_send_completion (rdma_peer_t *peer, struct ibv_wc *wc) } ret = rdma_pollin_notify (peer, post); - if (ret == -1) { + if ((ret == -1) && (peer != NULL)) { rpc_transport_disconnect (peer->trans); } -- cgit