+18
−0
+5
−4
+10
−1
Loading
If we disconnect qpairs without taking the lock, we run the risk of trying to double free qpair resources before they have been marked as NULL. For example, polling on one thread and calling nvme_rdma_qpair_disconnect from one thread while doing an nvme_ctrlr_reset on another thread. nvme_ctrlr_reset will call down to nvme_rdma_qpair_disconnect on the same qpair and without any locking it can result in trying to destroy the qpair resources multiple times. Change-Id: I9eef6f2f92961ef8e3f8ece0e4a3d54f3434cff8 Signed-off-by:Seth Howell <seth.howell@intel.com> Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/472413 Tested-by:
SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by:
Jim Harris <james.r.harris@intel.com> Reviewed-by:
Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>