[PATCH] qla2xxx: Fix setting lower transfer speed if GPSC fails

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This patch prevents driver from setting lower default speed
of 1 GB/sec, if the switch does not support Get Port Speed
Capabilities (GPSC) command. Setting this default speed results
into much lower write performance for large sequential WRITE.
This patch modifies driver to check for gpsc_supported flags and
prevents driver from issuing MBC_SET_PORT_PARAM (001Ah) to set
default speed of 1 GB/sec. If driver does not send this mailbox
command, firmware assumes maximum supported link speed and will
operate at the max speed.

Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
---
Hi Martin, 

This patch fixes lower write performance for large sequential Writes.

Please apply this to 4.18-scsi-fixes at your earliest convenience. 

Thanks,
Himanshu
---
 drivers/scsi/qla2xxx/qla_init.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c
index 1aa3720ea2ed..b0430a280ce6 100644
--- a/drivers/scsi/qla2xxx/qla_init.c
+++ b/drivers/scsi/qla2xxx/qla_init.c
@@ -5007,7 +5007,8 @@ qla2x00_iidma_fcport(scsi_qla_host_t *vha, fc_port_t *fcport)
 		return;
 
 	if (fcport->fp_speed == PORT_SPEED_UNKNOWN ||
-	    fcport->fp_speed > ha->link_data_rate)
+	    fcport->fp_speed > ha->link_data_rate ||
+	    !ha->flags.gpsc_supported)
 		return;
 
 	rval = qla2x00_set_idma_speed(vha, fcport->loop_id, fcport->fp_speed,
-- 
2.12.0




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux