dev_warn(nvmeq->q_dmadev,
"async event result %08x\n", result);
- blk_put_request(req);
+ blk_mq_free_hctx_request(nvmeq->hctx, req);
}
static void abort_completion(struct nvme_queue *nvmeq, void *ctx,
u16 status = le16_to_cpup(&cqe->status) >> 1;
u32 result = le32_to_cpup(&cqe->result);
- blk_put_request(req);
+ blk_mq_free_hctx_request(nvmeq->hctx, req);
dev_warn(nvmeq->q_dmadev, "Abort status:%x result:%x", status, result);
++nvmeq->dev->abort_limit;
cmdinfo->result = le32_to_cpup(&cqe->result);
cmdinfo->status = le16_to_cpup(&cqe->status) >> 1;
queue_kthread_work(cmdinfo->worker, &cmdinfo->work);
- blk_put_request(cmdinfo->req);
+ blk_mq_free_hctx_request(nvmeq->hctx, cmdinfo->req);
}
static inline struct nvme_cmd_info *get_cmd_from_tag(struct nvme_queue *nvmeq,
if (!req)
return -ENOMEM;
res = nvme_submit_sync_cmd(req, cmd, result, timeout);
- blk_put_request(req);
+ blk_mq_free_request(req);
return res;
}
if (!req)
return -ENOMEM;
res = nvme_submit_sync_cmd(req, cmd, result, NVME_IO_TIMEOUT);
- blk_put_request(req);
+ blk_mq_free_request(req);
return res;
}
dev_warn(nvmeq->q_dmadev,
"Could not abort I/O %d QID %d",
req->tag, nvmeq->qid);
- blk_put_request(req);
+ blk_mq_free_request(req);
}
}
else {
status = nvme_submit_sync_cmd(req, &c, &cmd.result,
timeout);
- blk_put_request(req);
+ blk_mq_free_request(req);
}
} else
status = __nvme_submit_admin_cmd(dev, &c, &cmd.result, timeout);