From b5399f7d80a249fafa870d8da9fcd0d077d943b9 Mon Sep 17 00:00:00 2001 From: Quinn Tran Date: Tue, 13 Jun 2017 20:47:27 -0700 Subject: [PATCH] scsi: qla2xxx: Remove datasegs_per_cmd and datasegs_per_cont field These fields only hold one set of value. Replace it with macros to reduce cache thrash. Signed-off-by: Quinn Tran Signed-off-by: Himanshu Madhani Signed-off-by: Martin K. Petersen --- drivers/scsi/qla2xxx/qla_target.c | 12 +++++------- drivers/scsi/qla2xxx/qla_target.h | 2 +- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/drivers/scsi/qla2xxx/qla_target.c b/drivers/scsi/qla2xxx/qla_target.c index e8aa58d..84e8130 100644 --- a/drivers/scsi/qla2xxx/qla_target.c +++ b/drivers/scsi/qla2xxx/qla_target.c @@ -2228,10 +2228,10 @@ static int qlt_pci_map_calc_cnt(struct qla_tgt_prm *prm) * If greater than four sg entries then we need to allocate * the continuation entries */ - if (prm->seg_cnt > prm->tgt->datasegs_per_cmd) + if (prm->seg_cnt > QLA_TGT_DATASEGS_PER_CMD_24XX) prm->req_cnt += DIV_ROUND_UP(prm->seg_cnt - - prm->tgt->datasegs_per_cmd, - prm->tgt->datasegs_per_cont); + QLA_TGT_DATASEGS_PER_CMD_24XX, + QLA_TGT_DATASEGS_PER_CONT_24XX); } else { /* DIF */ if ((cmd->se_cmd.prot_op == TARGET_PROT_DIN_INSERT) || @@ -2448,7 +2448,7 @@ static void qlt_load_cont_data_segments(struct qla_tgt_prm *prm) /* Load continuation entry data segments */ for (cnt = 0; - cnt < prm->tgt->datasegs_per_cont && prm->seg_cnt; + cnt < QLA_TGT_DATASEGS_PER_CONT_24XX && prm->seg_cnt; cnt++, prm->seg_cnt--) { *dword_ptr++ = cpu_to_le32(pci_dma_lo32 @@ -2492,7 +2492,7 @@ static void qlt_load_data_segments(struct qla_tgt_prm *prm) /* Load command entry data segments */ for (cnt = 0; - (cnt < prm->tgt->datasegs_per_cmd) && prm->seg_cnt; + (cnt < QLA_TGT_DATASEGS_PER_CMD_24XX) && prm->seg_cnt; cnt++, prm->seg_cnt--) { *dword_ptr++ = cpu_to_le32(pci_dma_lo32(sg_dma_address(prm->sg))); @@ -6164,8 +6164,6 @@ int qlt_add_target(struct qla_hw_data *ha, struct scsi_qla_host *base_vha) base_vha->vp_idx); /* 3 is reserved */ tgt->sg_tablesize = QLA_TGT_MAX_SG_24XX(base_vha->req->length - 3); - tgt->datasegs_per_cmd = QLA_TGT_DATASEGS_PER_CMD_24XX; - tgt->datasegs_per_cont = QLA_TGT_DATASEGS_PER_CONT_24XX; mutex_lock(&qla_tgt_mutex); list_add_tail(&tgt->tgt_list_entry, &qla_tgt_glist); diff --git a/drivers/scsi/qla2xxx/qla_target.h b/drivers/scsi/qla2xxx/qla_target.h index 902685f..7fe02d0 100644 --- a/drivers/scsi/qla2xxx/qla_target.h +++ b/drivers/scsi/qla2xxx/qla_target.h @@ -806,7 +806,7 @@ struct qla_tgt { */ int atio_irq_cmd_count; - int datasegs_per_cmd, datasegs_per_cont, sg_tablesize; + int sg_tablesize; /* Target's flags, serialized by pha->hardware_lock */ unsigned int link_reinit_iocb_pending:1; -- 2.7.4