mirror of https://gitee.com/openkylin/linux.git
scsi: qla2xxx: Cleaned up queue configuration code.
This patch cleaned up queue configuration code, such that once
initialized, we should not touch msix_count value. This will prevent
incorrect numbers of MSI-X vectors requested while performing target
mode configuration.
[mkp: fixed Fixes: hash]
Cc: <stable@vger.kernel.org>
Fixes: d74595278f
("scsi: qla2xxx: Add multiple queue pair functionality.")
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>
This commit is contained in:
parent
75d943f3e4
commit
f54f2cb540
|
@ -1815,6 +1815,7 @@ qla2x00_iospace_config(struct qla_hw_data *ha)
|
|||
|
||||
/* Determine queue resources */
|
||||
ha->max_req_queues = ha->max_rsp_queues = 1;
|
||||
ha->msix_count = QLA_BASE_VECTORS;
|
||||
if (!ql2xmqsupport || (!IS_QLA25XX(ha) && !IS_QLA81XX(ha)))
|
||||
goto mqiobase_exit;
|
||||
|
||||
|
@ -1842,9 +1843,8 @@ qla2x00_iospace_config(struct qla_hw_data *ha)
|
|||
"BAR 3 not enabled.\n");
|
||||
|
||||
mqiobase_exit:
|
||||
ha->msix_count = ha->max_rsp_queues + 1;
|
||||
ql_dbg_pci(ql_dbg_init, ha->pdev, 0x001c,
|
||||
"MSIX Count:%d.\n", ha->msix_count);
|
||||
"MSIX Count: %d.\n", ha->msix_count);
|
||||
return (0);
|
||||
|
||||
iospace_error_exit:
|
||||
|
@ -1892,6 +1892,7 @@ qla83xx_iospace_config(struct qla_hw_data *ha)
|
|||
/* 83XX 26XX always use MQ type access for queues
|
||||
* - mbar 2, a.k.a region 4 */
|
||||
ha->max_req_queues = ha->max_rsp_queues = 1;
|
||||
ha->msix_count = QLA_BASE_VECTORS;
|
||||
ha->mqiobase = ioremap(pci_resource_start(ha->pdev, 4),
|
||||
pci_resource_len(ha->pdev, 4));
|
||||
|
||||
|
@ -1934,14 +1935,8 @@ qla83xx_iospace_config(struct qla_hw_data *ha)
|
|||
"BAR 1 not enabled.\n");
|
||||
|
||||
mqiobase_exit:
|
||||
ha->msix_count = ha->max_rsp_queues + 1;
|
||||
if (QLA_TGT_MODE_ENABLED())
|
||||
ha->msix_count++;
|
||||
|
||||
qlt_83xx_iospace_config(ha);
|
||||
|
||||
ql_dbg_pci(ql_dbg_init, ha->pdev, 0x011f,
|
||||
"MSIX Count:%d.\n", ha->msix_count);
|
||||
"MSIX Count: %d.\n", ha->msix_count);
|
||||
return 0;
|
||||
|
||||
iospace_error_exit:
|
||||
|
|
Loading…
Reference in New Issue