aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/mpt3sas/mpi/mpi2_raid.h
diff options
context:
space:
mode:
authorJisheng Zhang <[email protected]>2018-09-20 21:32:52 +0000
committerBjorn Helgaas <[email protected]>2018-09-20 21:36:20 +0000
commit9024143e700f89d74b8cdaf316a3499d74fc56fe (patch)
tree21b380d0e4f4b0088a076d0c40be1fe975531ab0 /drivers/scsi/mpt3sas/mpi/mpi2_raid.h
parentMAINTAINERS: Move mobiveil PCI driver entry where it belongs (diff)
downloadkernel-9024143e700f89d74b8cdaf316a3499d74fc56fe.tar.gz
kernel-9024143e700f89d74b8cdaf316a3499d74fc56fe.zip
PCI: dwc: Fix scheduling while atomic issues
When programming the inbound/outbound ATUs, we call usleep_range() after each checking PCIE_ATU_ENABLE bit. Unfortunately, the ATU programming can be executed in atomic context: inbound ATU programming could be called through pci_epc_write_header() =>dw_pcie_ep_write_header() =>dw_pcie_prog_inbound_atu() outbound ATU programming could be called through pci_bus_read_config_dword() =>dw_pcie_rd_conf() =>dw_pcie_prog_outbound_atu() Fix this issue by calling mdelay() instead. Fixes: f8aed6ec624f ("PCI: dwc: designware: Add EP mode support") Fixes: d8bbeb39fbf3 ("PCI: designware: Wait for iATU enable") Signed-off-by: Jisheng Zhang <[email protected]> [[email protected]: commit log update] Signed-off-by: Lorenzo Pieralisi <[email protected]> Signed-off-by: Bjorn Helgaas <[email protected]> Acked-by: Gustavo Pimentel <[email protected]>
Diffstat (limited to 'drivers/scsi/mpt3sas/mpi/mpi2_raid.h')
0 files changed, 0 insertions, 0 deletions