diff options
author | Ji-Hyeon Gim <potatogim@potatogim.net> | 2017-05-11 18:05:21 +0900 |
---|---|---|
committer | Shyamsundar Ranganathan <srangana@redhat.com> | 2017-05-12 03:09:09 +0000 |
commit | ccfa06767f1282d9a3783e37555515a63cc62e69 (patch) | |
tree | 3f984b37965df760f17b1621c2954006f27283d9 /xlators/protocol | |
parent | 1a8fa910ccba7aa941f673302c1ddbd7bd818e39 (diff) |
rpc: fix a routine to destory RDMA qp(queue-pair)
Problem: If an error has occured with rdma_create_id() in gf_rdma_connect(),
process will jump to the 'unlock' label and then call gf_rdma_teardown()
which call __gf_rdma_teardown().
Presently, __gf_rdma_teardown() checks InifiniBand QP with peer->cm_id->qp!
Unfortunately, cm_id is not allocated and will be crushed in this situation :)
Solution: If 'this->private->peer->cm_id' member is null, do not check
'this->private->peer->cm_id->qp'.
Change-Id: Ie321b8cf175ef4f1bdd9733d73840f03ddff8c3b
BUG: 1449495
Signed-off-by: Ji-Hyeon Gim <potatogim@potatogim.net>
Reviewed-on: https://review.gluster.org/17249
Reviewed-by: Amar Tumballi <amarts@redhat.com>
Reviewed-by: Prashanth Pai <ppai@redhat.com>
NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
Tested-by: Ji-Hyeon Gim
CentOS-regression: Gluster Build System <jenkins@build.gluster.org>
Smoke: Gluster Build System <jenkins@build.gluster.org>
Reviewed-by: Jeff Darcy <jeff@pl.atyp.us>
Diffstat (limited to 'xlators/protocol')
0 files changed, 0 insertions, 0 deletions