nvme-fc: remove ->poll implementation
authorJens Axboe <axboe@kernel.dk>
Mon, 19 Nov 2018 18:37:31 +0000 (11:37 -0700)
committerJens Axboe <axboe@kernel.dk>
Mon, 19 Nov 2018 19:06:32 +0000 (12:06 -0700)
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>
drivers/nvme/host/fc.c
drivers/scsi/qla2xxx/qla_nvme.c
include/linux/nvme-fc-driver.h

index 98c3c77f48f63ca778e1c9fae86d39866251138f..de797c641265914dd6feed35b8ce5a4f9cd1e2d9 100644 (file)
@@ -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,
 };
 
index 7e78e7eff7830bb1f08a9b2ce02571d34f36a714..fccc733145fc91e38d548b607cca6447a15eef10 100644 (file)
@@ -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,
index 496ff759f84c69c8216315570c6ef78ae347582b..f4ab3b1925ac9b8169be8214283a2023f710ac84 100644 (file)
@@ -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 *);