diff --git a/drivers/nvme/host/rdma.c b/drivers/nvme/host/rdma.c index 221ace23aaa5e2386375f8ec8d18d71d975af34a..7e61e6447d2cc45b6f76d09c57360585895f5089 100644 --- a/drivers/nvme/host/rdma.c +++ b/drivers/nvme/host/rdma.c @@ -274,6 +274,9 @@ static int nvme_rdma_reinit_request(void *data, struct request *rq) struct nvme_rdma_request *req = blk_mq_rq_to_pdu(rq); int ret = 0; + if (WARN_ON_ONCE(!req->mr)) + return 0; + ib_dereg_mr(req->mr); req->mr = ib_alloc_mr(dev->pd, IB_MR_TYPE_MEM_REG,