diff options
author | James Smart <jsmart2021@gmail.com> | 2019-12-18 15:58:05 -0800 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2019-12-21 13:42:42 -0500 |
commit | 0b4391946da872e825efa3edfa932e44ae6e9cf9 (patch) | |
tree | aecba2aa41803bd5565df02506bcfee516ca2478 /drivers/scsi/lpfc/lpfc_init.c | |
parent | a052ce848d4358c0094efc2c8f9aec0a31358e42 (diff) | |
download | lwn-0b4391946da872e825efa3edfa932e44ae6e9cf9.tar.gz lwn-0b4391946da872e825efa3edfa932e44ae6e9cf9.zip |
scsi: lpfc: Fix unmap of dpp bars affecting next driver load
When unattaching, the driver did not unmap the DPP bar. This caused the
next load of the driver, which attempts to enable wc, to not work correctly
and wc to be disabled due to an address mapping overlap.
Fix by unmapping on unattach.
Link: https://lore.kernel.org/r/20191218235808.31922-8-jsmart2021@gmail.com
Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com>
Signed-off-by: James Smart <jsmart2021@gmail.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_init.c')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_init.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c index 3defada2602f..4685745aa6ed 100644 --- a/drivers/scsi/lpfc/lpfc_init.c +++ b/drivers/scsi/lpfc/lpfc_init.c @@ -10441,6 +10441,8 @@ lpfc_sli4_pci_mem_unset(struct lpfc_hba *phba) case LPFC_SLI_INTF_IF_TYPE_6: iounmap(phba->sli4_hba.drbl_regs_memmap_p); iounmap(phba->sli4_hba.conf_regs_memmap_p); + if (phba->sli4_hba.dpp_regs_memmap_p) + iounmap(phba->sli4_hba.dpp_regs_memmap_p); break; case LPFC_SLI_INTF_IF_TYPE_1: default: |