From: Sagar Biradar <sagar.biradar@xxxxxxxxxxxxx> To: Martin K. Petersen <martin.petersen@xxxxxxxxxx> To: James Bottomley <jejb@xxxxxxxxxxxxxxxxxx> cc: linux-scsi <linux-scsi@xxxxxxxxxxxxxxx> cc: aacraid@xxxxxxxxxxxxx cc: Dave Carroll <dave.carroll@xxxxxxxxxxxxx> cc: Scott Benesh <scott.benesh@xxxxxxxxxxxxx> cc: stable@xxxxxxxxxxxxxxx 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: a052865fe2871a3888 (aacraid: Set correct Queue Depth for HBA1000 RAW disks) Signed-off-by: Sagar Biradar <Sagar.Biradar@xxxxxxxxxxxxx> --- drivers/scsi/aacraid/linit.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/drivers/scsi/aacraid/linit.c b/drivers/scsi/aacraid/linit.c index 7e56a11..cceffac 100644 --- a/drivers/scsi/aacraid/linit.c +++ b/drivers/scsi/aacraid/linit.c @@ -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)) -- 1.8.3.1