| From d0d2c68b759bbf678e078fd0c71b5fde65a9392c Mon Sep 17 00:00:00 2001 |
| From: Michael Hernandez <michael.hernandez@cavium.com> |
| Date: Wed, 15 Feb 2017 15:37:20 -0800 |
| Subject: scsi: qla2xxx: Fix response queue count for Target mode. |
| |
| From: Michael Hernandez <michael.hernandez@cavium.com> |
| |
| commit d0d2c68b759bbf678e078fd0c71b5fde65a9392c upstream. |
| |
| Target mode initialization was not calculating response queue values |
| correctly resulting into one less MSI-X vector. |
| |
| [mkp: fixed Fixes: hash] |
| |
| 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> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/scsi/qla2xxx/qla_os.c | 3 ++- |
| 1 file changed, 2 insertions(+), 1 deletion(-) |
| |
| --- a/drivers/scsi/qla2xxx/qla_os.c |
| +++ b/drivers/scsi/qla2xxx/qla_os.c |
| @@ -1915,12 +1915,13 @@ qla83xx_iospace_config(struct qla_hw_dat |
| 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; |