Comment 4 for bug 1720359

Revision history for this message
Eric Desrochers (slashd) wrote :

The GOOD commit (found via a git bisect) is the following :

git show e2c7b433f729cedb32514480af8cbdf2fe5cf264
commit e2c7b433f729cedb32514480af8cbdf2fe5cf264
Author: Yadan Fan <email address hidden>
Date: Fri Jun 23 17:40:05 2017 +0800

    scsi: hpsa: limit transfer length to 1MB

    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 <email address hidden>
    Reviewed-by: Johannes Thumshirn <email address hidden>
    Acked-by: Don Brace <email address hidden>
    Signed-off-by: Martin K. Petersen <email address hidden>

diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
index 8914eab..4f7cdb2 100644
--- a/drivers/scsi/hpsa.c
+++ b/drivers/scsi/hpsa.c
@@ -938,7 +938,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,
 };