rdma.c (8446546cc21819478542e9d728bce85e39898fc5) rdma.c (ff029451496364eef0d342618dfc9972b78f3392)
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * NVMe over Fabrics RDMA host code.
4 * Copyright (c) 2015-2016 HGST, a Western Digital Company.
5 */
6#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
7#include <linux/module.h>
8#include <linux/init.h>

--- 135 unchanged lines hidden (view full) ---

144static bool register_always = true;
145module_param(register_always, bool, 0444);
146MODULE_PARM_DESC(register_always,
147 "Use memory registration even for contiguous memory regions");
148
149static int nvme_rdma_cm_handler(struct rdma_cm_id *cm_id,
150 struct rdma_cm_event *event);
151static void nvme_rdma_recv_done(struct ib_cq *cq, struct ib_wc *wc);
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * NVMe over Fabrics RDMA host code.
4 * Copyright (c) 2015-2016 HGST, a Western Digital Company.
5 */
6#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
7#include <linux/module.h>
8#include <linux/init.h>

--- 135 unchanged lines hidden (view full) ---

144static bool register_always = true;
145module_param(register_always, bool, 0444);
146MODULE_PARM_DESC(register_always,
147 "Use memory registration even for contiguous memory regions");
148
149static int nvme_rdma_cm_handler(struct rdma_cm_id *cm_id,
150 struct rdma_cm_event *event);
151static void nvme_rdma_recv_done(struct ib_cq *cq, struct ib_wc *wc);
152static void nvme_rdma_complete_rq(struct request *rq);
152
153static const struct blk_mq_ops nvme_rdma_mq_ops;
154static const struct blk_mq_ops nvme_rdma_admin_mq_ops;
155
156static inline int nvme_rdma_queue_idx(struct nvme_rdma_queue *queue)
157{
158 return queue - queue->ctrl->queues;
159}

--- 990 unchanged lines hidden (view full) ---

1150}
1151
1152static void nvme_rdma_end_request(struct nvme_rdma_request *req)
1153{
1154 struct request *rq = blk_mq_rq_from_pdu(req);
1155
1156 if (!refcount_dec_and_test(&req->ref))
1157 return;
153
154static const struct blk_mq_ops nvme_rdma_mq_ops;
155static const struct blk_mq_ops nvme_rdma_admin_mq_ops;
156
157static inline int nvme_rdma_queue_idx(struct nvme_rdma_queue *queue)
158{
159 return queue - queue->ctrl->queues;
160}

--- 990 unchanged lines hidden (view full) ---

1151}
1152
1153static void nvme_rdma_end_request(struct nvme_rdma_request *req)
1154{
1155 struct request *rq = blk_mq_rq_from_pdu(req);
1156
1157 if (!refcount_dec_and_test(&req->ref))
1158 return;
1158 nvme_end_request(rq, req->status, req->result);
1159 if (!nvme_end_request(rq, req->status, req->result))
1160 nvme_rdma_complete_rq(rq);
1159}
1160
1161static void nvme_rdma_wr_error(struct ib_cq *cq, struct ib_wc *wc,
1162 const char *op)
1163{
1164 struct nvme_rdma_queue *queue = cq->cq_context;
1165 struct nvme_rdma_ctrl *ctrl = queue->ctrl;
1166

--- 1245 unchanged lines hidden ---
1161}
1162
1163static void nvme_rdma_wr_error(struct ib_cq *cq, struct ib_wc *wc,
1164 const char *op)
1165{
1166 struct nvme_rdma_queue *queue = cq->cq_context;
1167 struct nvme_rdma_ctrl *ctrl = queue->ctrl;
1168

--- 1245 unchanged lines hidden ---