diff options
author | Christoph Hellwig | 2016-11-10 16:32:34 +0100 |
---|---|---|
committer | Jens Axboe | 2016-11-10 18:06:26 +0100 |
commit | 7bf58533a0bc257edff883619befe7e5a1e8caca (patch) | |
tree | 0ffacc930004c83ee064ae0bb9a035b6744a04e4 /drivers/nvme/host/rdma.c | |
parent | nvme: introduce struct nvme_request (diff) | |
download | kernel-qcow2-linux-7bf58533a0bc257edff883619befe7e5a1e8caca.tar.gz kernel-qcow2-linux-7bf58533a0bc257edff883619befe7e5a1e8caca.tar.xz kernel-qcow2-linux-7bf58533a0bc257edff883619befe7e5a1e8caca.zip |
nvme: don't pass the full CQE to nvme_complete_async_event
We only need the status and result fields, and passing them explicitly
makes life a lot easier for the Fibre Channel transport which doesn't
have a full CQE for the fast path case.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Keith Busch <keith.busch@intel.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'drivers/nvme/host/rdma.c')
-rw-r--r-- | drivers/nvme/host/rdma.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/nvme/host/rdma.c b/drivers/nvme/host/rdma.c index 0b8a161cf881..c4700efc0390 100644 --- a/drivers/nvme/host/rdma.c +++ b/drivers/nvme/host/rdma.c @@ -1168,7 +1168,8 @@ static int __nvme_rdma_recv_done(struct ib_cq *cq, struct ib_wc *wc, int tag) */ if (unlikely(nvme_rdma_queue_idx(queue) == 0 && cqe->command_id >= NVME_RDMA_AQ_BLKMQ_DEPTH)) - nvme_complete_async_event(&queue->ctrl->ctrl, cqe); + nvme_complete_async_event(&queue->ctrl->ctrl, cqe->status, + &cqe->result); else ret = nvme_rdma_process_nvme_rsp(queue, cqe, wc, tag); ib_dma_sync_single_for_device(ibdev, qe->dma, len, DMA_FROM_DEVICE); |