diff options
author | Darren Trapp <darren.trapp@cavium.com> | 2018-03-21 02:09:36 -0400 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2018-03-21 18:38:54 -0400 |
commit | 2e4c5d2ef76b6f04a3cb7a15bc0fee0ab029dedf (patch) | |
tree | 9ba5727bd1ab07798a8b6c4428a2ee61c6d78e01 | |
parent | 870fe24f3c0b2cf40998f8ab21d4cf4e4e9cf619 (diff) |
scsi: qla2xxx: Remove nvme_done_list
Signed-off-by: Darren Trapp <darren.trapp@cavium.com>
Signed-off-by: Himanshu Madhani <himanshu.madhani@cavium.com>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
-rw-r--r-- | drivers/scsi/qla2xxx/qla_def.h | 1 | ||||
-rw-r--r-- | drivers/scsi/qla2xxx/qla_gbl.h | 2 | ||||
-rw-r--r-- | drivers/scsi/qla2xxx/qla_init.c | 1 | ||||
-rw-r--r-- | drivers/scsi/qla2xxx/qla_mid.c | 6 | ||||
-rw-r--r-- | drivers/scsi/qla2xxx/qla_nvme.c | 13 | ||||
-rw-r--r-- | drivers/scsi/qla2xxx/qla_os.c | 1 |
6 files changed, 2 insertions, 22 deletions
diff --git a/drivers/scsi/qla2xxx/qla_def.h b/drivers/scsi/qla2xxx/qla_def.h index 59c449b141cd..6aae126add0c 100644 --- a/drivers/scsi/qla2xxx/qla_def.h +++ b/drivers/scsi/qla2xxx/qla_def.h | |||
@@ -3464,7 +3464,6 @@ struct qla_qpair { | |||
3464 | struct work_struct q_work; | 3464 | struct work_struct q_work; |
3465 | struct list_head qp_list_elem; /* vha->qp_list */ | 3465 | struct list_head qp_list_elem; /* vha->qp_list */ |
3466 | struct list_head hints_list; | 3466 | struct list_head hints_list; |
3467 | struct list_head nvme_done_list; | ||
3468 | uint16_t cpuid; | 3467 | uint16_t cpuid; |
3469 | struct qla_tgt_counters tgt_counters; | 3468 | struct qla_tgt_counters tgt_counters; |
3470 | }; | 3469 | }; |
diff --git a/drivers/scsi/qla2xxx/qla_gbl.h b/drivers/scsi/qla2xxx/qla_gbl.h index e9295398050c..19f44e12926b 100644 --- a/drivers/scsi/qla2xxx/qla_gbl.h +++ b/drivers/scsi/qla2xxx/qla_gbl.h | |||
@@ -896,6 +896,4 @@ void qlt_update_host_map(struct scsi_qla_host *, port_id_t); | |||
896 | void qlt_remove_target_resources(struct qla_hw_data *); | 896 | void qlt_remove_target_resources(struct qla_hw_data *); |
897 | void qlt_clr_qp_table(struct scsi_qla_host *vha); | 897 | void qlt_clr_qp_table(struct scsi_qla_host *vha); |
898 | 898 | ||
899 | void qla_nvme_cmpl_io(struct srb_iocb *); | ||
900 | |||
901 | #endif /* _QLA_GBL_H */ | 899 | #endif /* _QLA_GBL_H */ |
diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c index 7f8bfa0454d2..33823d74c782 100644 --- a/drivers/scsi/qla2xxx/qla_init.c +++ b/drivers/scsi/qla2xxx/qla_init.c | |||
@@ -8405,7 +8405,6 @@ struct qla_qpair *qla2xxx_create_qpair(struct scsi_qla_host *vha, int qos, | |||
8405 | qpair->vp_idx = vp_idx; | 8405 | qpair->vp_idx = vp_idx; |
8406 | qpair->fw_started = ha->flags.fw_started; | 8406 | qpair->fw_started = ha->flags.fw_started; |
8407 | INIT_LIST_HEAD(&qpair->hints_list); | 8407 | INIT_LIST_HEAD(&qpair->hints_list); |
8408 | INIT_LIST_HEAD(&qpair->nvme_done_list); | ||
8409 | qpair->chip_reset = ha->base_qpair->chip_reset; | 8408 | qpair->chip_reset = ha->base_qpair->chip_reset; |
8410 | qpair->enable_class_2 = ha->base_qpair->enable_class_2; | 8409 | qpair->enable_class_2 = ha->base_qpair->enable_class_2; |
8411 | qpair->enable_explicit_conf = | 8410 | qpair->enable_explicit_conf = |
diff --git a/drivers/scsi/qla2xxx/qla_mid.c b/drivers/scsi/qla2xxx/qla_mid.c index e965b16f21e3..da85cd89639f 100644 --- a/drivers/scsi/qla2xxx/qla_mid.c +++ b/drivers/scsi/qla2xxx/qla_mid.c | |||
@@ -778,18 +778,12 @@ static void qla_do_work(struct work_struct *work) | |||
778 | struct qla_qpair *qpair = container_of(work, struct qla_qpair, q_work); | 778 | struct qla_qpair *qpair = container_of(work, struct qla_qpair, q_work); |
779 | struct scsi_qla_host *vha; | 779 | struct scsi_qla_host *vha; |
780 | struct qla_hw_data *ha = qpair->hw; | 780 | struct qla_hw_data *ha = qpair->hw; |
781 | struct srb_iocb *nvme, *nxt_nvme; | ||
782 | 781 | ||
783 | spin_lock_irqsave(&qpair->qp_lock, flags); | 782 | spin_lock_irqsave(&qpair->qp_lock, flags); |
784 | vha = pci_get_drvdata(ha->pdev); | 783 | vha = pci_get_drvdata(ha->pdev); |
785 | qla24xx_process_response_queue(vha, qpair->rsp); | 784 | qla24xx_process_response_queue(vha, qpair->rsp); |
786 | spin_unlock_irqrestore(&qpair->qp_lock, flags); | 785 | spin_unlock_irqrestore(&qpair->qp_lock, flags); |
787 | 786 | ||
788 | list_for_each_entry_safe(nvme, nxt_nvme, &qpair->nvme_done_list, | ||
789 | u.nvme.entry) { | ||
790 | list_del_init(&nvme->u.nvme.entry); | ||
791 | qla_nvme_cmpl_io(nvme); | ||
792 | } | ||
793 | } | 787 | } |
794 | 788 | ||
795 | /* create response queue */ | 789 | /* create response queue */ |
diff --git a/drivers/scsi/qla2xxx/qla_nvme.c b/drivers/scsi/qla2xxx/qla_nvme.c index adeda6a4e4fd..8c05df30c083 100644 --- a/drivers/scsi/qla2xxx/qla_nvme.c +++ b/drivers/scsi/qla2xxx/qla_nvme.c | |||
@@ -149,16 +149,6 @@ static void qla_nvme_sp_ls_done(void *ptr, int res) | |||
149 | qla2x00_rel_sp(sp); | 149 | qla2x00_rel_sp(sp); |
150 | } | 150 | } |
151 | 151 | ||
152 | void qla_nvme_cmpl_io(struct srb_iocb *nvme) | ||
153 | { | ||
154 | srb_t *sp; | ||
155 | struct nvmefc_fcp_req *fd = nvme->u.nvme.desc; | ||
156 | |||
157 | sp = container_of(nvme, srb_t, u.iocb_cmd); | ||
158 | fd->done(fd); | ||
159 | qla2xxx_rel_qpair_sp(sp->qpair, sp); | ||
160 | } | ||
161 | |||
162 | static void qla_nvme_sp_done(void *ptr, int res) | 152 | static void qla_nvme_sp_done(void *ptr, int res) |
163 | { | 153 | { |
164 | srb_t *sp = ptr; | 154 | srb_t *sp = ptr; |
@@ -177,7 +167,8 @@ static void qla_nvme_sp_done(void *ptr, int res) | |||
177 | fd->status = NVME_SC_INTERNAL; | 167 | fd->status = NVME_SC_INTERNAL; |
178 | 168 | ||
179 | fd->rcv_rsplen = nvme->u.nvme.rsp_pyld_len; | 169 | fd->rcv_rsplen = nvme->u.nvme.rsp_pyld_len; |
180 | list_add_tail(&nvme->u.nvme.entry, &sp->qpair->nvme_done_list); | 170 | fd->done(fd); |
171 | qla2xxx_rel_qpair_sp(sp->qpair, sp); | ||
181 | 172 | ||
182 | return; | 173 | return; |
183 | } | 174 | } |
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c index 12ee6e02d146..bd37a243c0bd 100644 --- a/drivers/scsi/qla2xxx/qla_os.c +++ b/drivers/scsi/qla2xxx/qla_os.c | |||
@@ -397,7 +397,6 @@ static void qla_init_base_qpair(struct scsi_qla_host *vha, struct req_que *req, | |||
397 | ha->base_qpair->use_shadow_reg = IS_SHADOW_REG_CAPABLE(ha) ? 1 : 0; | 397 | ha->base_qpair->use_shadow_reg = IS_SHADOW_REG_CAPABLE(ha) ? 1 : 0; |
398 | ha->base_qpair->msix = &ha->msix_entries[QLA_MSIX_RSP_Q]; | 398 | ha->base_qpair->msix = &ha->msix_entries[QLA_MSIX_RSP_Q]; |
399 | INIT_LIST_HEAD(&ha->base_qpair->hints_list); | 399 | INIT_LIST_HEAD(&ha->base_qpair->hints_list); |
400 | INIT_LIST_HEAD(&ha->base_qpair->nvme_done_list); | ||
401 | ha->base_qpair->enable_class_2 = ql2xenableclass2; | 400 | ha->base_qpair->enable_class_2 = ql2xenableclass2; |
402 | /* init qpair to this cpu. Will adjust at run time. */ | 401 | /* init qpair to this cpu. Will adjust at run time. */ |
403 | qla_cpu_update(rsp->qpair, raw_smp_processor_id()); | 402 | qla_cpu_update(rsp->qpair, raw_smp_processor_id()); |