]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - ti-linux-kernel/ti-linux-kernel.git/commitdiff
scsi: aacraid: Fix performance issue on logical drives
authorSagar Biradar <sagar.biradar@microchip.com>
Fri, 8 Mar 2019 07:26:41 +0000 (23:26 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 23 Mar 2019 13:35:20 +0000 (14:35 +0100)
commit 0015437cc046e5ec2b57b00ff8312b8d432eac7c upstream.

Fix performance issue where the queue depth for SmartIOC logical volumes is
set to 1, and allow the usual logical volume code to be executed

Fixes: a052865fe287 (aacraid: Set correct Queue Depth for HBA1000 RAW disks)
Cc: stable@vger.kernel.org
Signed-off-by: Sagar Biradar <Sagar.Biradar@microchip.com>
Reviewed-by: Dave Carroll <david.carroll@microsemi.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/scsi/aacraid/linit.c

index 4917649cacd50a6fa0759e49299b9a1028945f2e..053a31c5485f3daf19bd8f5deafcba6c6e2b18f4 100644 (file)
@@ -413,13 +413,16 @@ static int aac_slave_configure(struct scsi_device *sdev)
        if (chn < AAC_MAX_BUSES && tid < AAC_MAX_TARGETS && aac->sa_firmware) {
                devtype = aac->hba_map[chn][tid].devtype;
 
-               if (devtype == AAC_DEVTYPE_NATIVE_RAW)
+               if (devtype == AAC_DEVTYPE_NATIVE_RAW) {
                        depth = aac->hba_map[chn][tid].qd_limit;
-               else if (devtype == AAC_DEVTYPE_ARC_RAW)
+                       set_timeout = 1;
+                       goto common_config;
+               }
+               if (devtype == AAC_DEVTYPE_ARC_RAW) {
                        set_qd_dev_type = true;
-
-               set_timeout = 1;
-               goto common_config;
+                       set_timeout = 1;
+                       goto common_config;
+               }
        }
 
        if (aac->jbod && (sdev->type == TYPE_DISK))