scsi: lpfc: fix block guard enablement on SLI3 adapters
Sincef44ac12f1d
, BG enablement is tracked with the LPFC_SLI3_BG_ENABLED bit, which is set in lpfc_get_cfgparam before lpfc_sli_config_sli_port() is called. The bit shouldn't be cleared before checking the feature. Based on problem analysis by David Bond. Fixes:f44ac12f1d
"scsi: lpfc: Memory allocation error during driver start-up on power8" Tested-by: David Bond <dbond@suse.com> Signed-off-by: Martin Wilck <mwilck@suse.com> Cc: stable@vger.kernel.org # 4.17.x Cc: stable@vger.kernel.org # 4.18.x Cc: stable@vger.kernel.org # 4.19.x Reviewed-by: Hannes Reinecke <hare@suse.com> Acked-by: James Smart <jsmart2021@gmail.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
Родитель
8e4829c6f7
Коммит
dfb7513374
|
@ -167,7 +167,11 @@ lpfc_config_port_prep(struct lpfc_hba *phba)
|
|||
sizeof(phba->wwpn));
|
||||
}
|
||||
|
||||
phba->sli3_options = 0x0;
|
||||
/*
|
||||
* Clear all option bits except LPFC_SLI3_BG_ENABLED,
|
||||
* which was already set in lpfc_get_cfgparam()
|
||||
*/
|
||||
phba->sli3_options &= (uint32_t)LPFC_SLI3_BG_ENABLED;
|
||||
|
||||
/* Setup and issue mailbox READ REV command */
|
||||
lpfc_read_rev(phba, pmb);
|
||||
|
|
|
@ -4965,7 +4965,6 @@ lpfc_sli_config_port(struct lpfc_hba *phba, int sli_mode)
|
|||
phba->sli3_options &= ~(LPFC_SLI3_NPIV_ENABLED |
|
||||
LPFC_SLI3_HBQ_ENABLED |
|
||||
LPFC_SLI3_CRP_ENABLED |
|
||||
LPFC_SLI3_BG_ENABLED |
|
||||
LPFC_SLI3_DSS_ENABLED);
|
||||
if (rc != MBX_SUCCESS) {
|
||||
lpfc_printf_log(phba, KERN_ERR, LOG_INIT,
|
||||
|
|
Загрузка…
Ссылка в новой задаче