[PATCH][SRU][Z] scsi: hpsa: limit transfer length to 1MB

Eric Desrochers eric.desrochers at canonical.com
Fri Oct 6 20:38:42 UTC 2017


From: Yadan Fan <ydfan at suse.com>

BugLink: https://bugs.launchpad.net/bugs/1720359

The hpsa firmware will bypass the cache for any request larger than 1MB,
so we should cap the request size to avoid any performance degradation
in kernels later than v4.3

This degradation is caused from d2be537c3ba3568acd79cd178327b842e60d035e,
which changed max_sectors_kb to 1280k, but the hardware is able to work
fine with it, so the true fix should be from hpsa driver.

Signed-off-by: Yadan Fan <ydfan at suse.com>
Reviewed-by: Johannes Thumshirn <jthumshirn at suse.de>
Acked-by: Don Brace <don.brace at microsemi.com>
Signed-off-by: Martin K. Petersen <martin.petersen at oracle.com>
(cherry picked from commit e2c7b433f729cedb32514480af8cbdf2fe5cf264)
Signed-off-by: Eric Desrochers <eric.desrochers at canonical.com>
---
 drivers/scsi/hpsa.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
index cbc0c5f..b68ecd1 100644
--- a/drivers/scsi/hpsa.c
+++ b/drivers/scsi/hpsa.c
@@ -948,7 +948,7 @@ static struct scsi_host_template hpsa_driver_template = {
 #endif
 	.sdev_attrs = hpsa_sdev_attrs,
 	.shost_attrs = hpsa_shost_attrs,
-	.max_sectors = 8192,
+	.max_sectors = 1024,
 	.no_write_same = 1,
 };
 
-- 
2.7.4





More information about the kernel-team mailing list