From: Michael Hernandez <michael.hernan...@cavium.com>

Target mode initialization was not calculating response
queue values correctly resulting into one less MSI-X vector.

Fixes: 093df73 ("scsi: qla2xxx: Fix Target mode handling with Multiqueue 
changes.")
Signed-off-by: Michael Hernandez <michael.hernan...@cavium.com>
Signed-off-by: Himanshu Madhani <himanshu.madh...@cavium.com>
---
 drivers/scsi/qla2xxx/qla_os.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index 8174cee..71b6b20 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -1916,12 +1916,13 @@ uint32_t qla2x00_isp_reg_stat(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;
-- 
1.8.3.1

Reply via email to