scsi: qla2xxx: Fix response queue count for Target mode.
authorMichael Hernandez <michael.hernandez@cavium.com>
Wed, 15 Feb 2017 23:37:20 +0000 (15:37 -0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Thu, 23 Feb 2017 00:00:17 +0000 (19:00 -0500)
Target mode initialization was not calculating response queue values
correctly resulting into one less MSI-X vector.

[mkp: fixed Fixes: hash]

Cc: <stable@vger.kernel.org>
Fixes: 093df73771ba ("scsi: qla2xxx: Fix Target mode handling with Multiqueue changes.")
Signed-off-by: Michael Hernandez <michael.hernandez@cavium.com>
Signed-off-by: Himanshu Madhani <himanshu.madhani@cavium.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qla2xxx/qla_os.c

index 8174cee8eb53dbcd18d62ba5c73e4baad749c1f5..71b6b20ae82b947fa4dcf659f8c76d6f77317d94 100644 (file)
@@ -1916,12 +1916,13 @@ qla83xx_iospace_config(struct qla_hw_data *ha)
                if (ql2xmqsupport) {
                        /* MB interrupt uses 1 vector */
                        ha->max_req_queues = ha->msix_count - 1;
-                       ha->max_rsp_queues = ha->max_req_queues;
 
                        /* ATIOQ needs 1 vector. That's 1 less QPair */
                        if (QLA_TGT_MODE_ENABLED())
                                ha->max_req_queues--;
 
+                       ha->max_rsp_queues = ha->max_req_queues;
+
                        /* Queue pairs is the max value minus
                         * the base queue pair */
                        ha->max_qpairs = ha->max_req_queues - 1;