nvme-fc: remove ->poll implementation
It's specifically looking for a given request, which we will not be supporting going forward. Also kill the qla2xxx poll implementation as that's the only user of the nvme-fc poll, and the now unused ->poll_queue() hook. Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: James Smart <jsmart2021@gmail.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
85f4d4b65f
commit
92f806d678
|
@ -2302,38 +2302,6 @@ nvme_fc_queue_rq(struct blk_mq_hw_ctx *hctx,
|
|||
return nvme_fc_start_fcp_op(ctrl, queue, op, data_len, io_dir);
|
||||
}
|
||||
|
||||
static struct blk_mq_tags *
|
||||
nvme_fc_tagset(struct nvme_fc_queue *queue)
|
||||
{
|
||||
if (queue->qnum == 0)
|
||||
return queue->ctrl->admin_tag_set.tags[queue->qnum];
|
||||
|
||||
return queue->ctrl->tag_set.tags[queue->qnum - 1];
|
||||
}
|
||||
|
||||
static int
|
||||
nvme_fc_poll(struct blk_mq_hw_ctx *hctx, unsigned int tag)
|
||||
|
||||
{
|
||||
struct nvme_fc_queue *queue = hctx->driver_data;
|
||||
struct nvme_fc_ctrl *ctrl = queue->ctrl;
|
||||
struct request *req;
|
||||
struct nvme_fc_fcp_op *op;
|
||||
|
||||
req = blk_mq_tag_to_rq(nvme_fc_tagset(queue), tag);
|
||||
if (!req)
|
||||
return 0;
|
||||
|
||||
op = blk_mq_rq_to_pdu(req);
|
||||
|
||||
if ((atomic_read(&op->state) == FCPOP_STATE_ACTIVE) &&
|
||||
(ctrl->lport->ops->poll_queue))
|
||||
ctrl->lport->ops->poll_queue(&ctrl->lport->localport,
|
||||
queue->lldd_handle);
|
||||
|
||||
return ((atomic_read(&op->state) != FCPOP_STATE_ACTIVE));
|
||||
}
|
||||
|
||||
static void
|
||||
nvme_fc_submit_async_event(struct nvme_ctrl *arg)
|
||||
{
|
||||
|
@ -2404,7 +2372,6 @@ static const struct blk_mq_ops nvme_fc_mq_ops = {
|
|||
.init_request = nvme_fc_init_request,
|
||||
.exit_request = nvme_fc_exit_request,
|
||||
.init_hctx = nvme_fc_init_hctx,
|
||||
.poll = nvme_fc_poll,
|
||||
.timeout = nvme_fc_timeout,
|
||||
};
|
||||
|
||||
|
|
|
@ -272,17 +272,6 @@ static void qla_nvme_fcp_abort(struct nvme_fc_local_port *lport,
|
|||
schedule_work(&priv->abort_work);
|
||||
}
|
||||
|
||||
static void qla_nvme_poll(struct nvme_fc_local_port *lport, void *hw_queue_handle)
|
||||
{
|
||||
struct qla_qpair *qpair = hw_queue_handle;
|
||||
unsigned long flags;
|
||||
struct scsi_qla_host *vha = lport->private;
|
||||
|
||||
spin_lock_irqsave(&qpair->qp_lock, flags);
|
||||
qla24xx_process_response_queue(vha, qpair->rsp);
|
||||
spin_unlock_irqrestore(&qpair->qp_lock, flags);
|
||||
}
|
||||
|
||||
static inline int qla2x00_start_nvme_mq(srb_t *sp)
|
||||
{
|
||||
unsigned long flags;
|
||||
|
@ -578,7 +567,6 @@ static struct nvme_fc_port_template qla_nvme_fc_transport = {
|
|||
.ls_abort = qla_nvme_ls_abort,
|
||||
.fcp_io = qla_nvme_post_cmd,
|
||||
.fcp_abort = qla_nvme_fcp_abort,
|
||||
.poll_queue = qla_nvme_poll,
|
||||
.max_hw_queues = 8,
|
||||
.max_sgl_segments = 128,
|
||||
.max_dif_sgl_segments = 64,
|
||||
|
|
|
@ -403,7 +403,6 @@ struct nvme_fc_port_template {
|
|||
void **handle);
|
||||
void (*delete_queue)(struct nvme_fc_local_port *,
|
||||
unsigned int qidx, void *handle);
|
||||
void (*poll_queue)(struct nvme_fc_local_port *, void *handle);
|
||||
int (*ls_req)(struct nvme_fc_local_port *,
|
||||
struct nvme_fc_remote_port *,
|
||||
struct nvmefc_ls_req *);
|
||||
|
|
Loading…
Reference in New Issue