Re: [PATCH v2 0/5] PCI: dwc: improve msi handling

From: Jisheng Zhang
Date: Tue Oct 06 2020 - 02:37:48 EST


On Tue, 6 Oct 2020 11:56:34 +0530 Vidya Sagar wrote:

>
>
> Hi,

Hi,

> I would like to verify this series along with the other series "PCI:
> dwc: fix two MSI issues" on Tegra194. I tried to apply these series on
> both linux-next and Lorenzo's pci/dwc branches but there seem to be non
> trivial conflicts. Could you please tell me which branch I can use and
> apply these series cleanly?

This is a fix, so I thought the series would be picked up in v5.9, so the
series is patched against v5.9-rcN

could you please try v5 https://lkml.org/lkml/2020/9/29/2511 on v5.9-rc7?


Thanks

> FWIW, I acknowledge that the existing code does leak MSI target page
> every time system goes through suspend-resume sequence on Tegra194.
>
> Thanks,
> Vidya Sagar
>
> On 9/24/2020 4:35 PM, Jisheng Zhang wrote:
> > External email: Use caution opening links or attachments
> >
> >
> > Improve the msi code:
> > 1. Add proper error handling.
> > 2. Move dw_pcie_msi_init() from each users to designware host to solve
> > msi page leakage in resume path.
> >
> > Since v1:
> > - add proper error handling patches.
> > - solve the msi page leakage by moving dw_pcie_msi_init() from each
> > users to designware host
> >
> >
> > Jisheng Zhang (5):
> > PCI: dwc: Call dma_unmap_page() before freeing the msi page
> > PCI: dwc: Check alloc_page() return value
> > PCI: dwc: Rename dw_pcie_free_msi to dw_pcie_msi_deinit
> > PCI: dwc: Skip PCIE_MSI_INTR0* programming if MSI is disabled
> > PCI: dwc: Move dw_pcie_msi_init() from each users to designware host
> >
> > drivers/pci/controller/dwc/pci-dra7xx.c | 1 +
> > drivers/pci/controller/dwc/pci-exynos.c | 2 -
> > drivers/pci/controller/dwc/pci-imx6.c | 3 --
> > drivers/pci/controller/dwc/pci-meson.c | 8 ----
> > drivers/pci/controller/dwc/pcie-artpec6.c | 10 -----
> > .../pci/controller/dwc/pcie-designware-host.c | 43 +++++++++++++------
> > .../pci/controller/dwc/pcie-designware-plat.c | 3 --
> > drivers/pci/controller/dwc/pcie-designware.h | 9 +++-
> > drivers/pci/controller/dwc/pcie-histb.c | 3 --
> > drivers/pci/controller/dwc/pcie-kirin.c | 3 --
> > drivers/pci/controller/dwc/pcie-qcom.c | 3 --
> > drivers/pci/controller/dwc/pcie-spear13xx.c | 1 -
> > drivers/pci/controller/dwc/pcie-tegra194.c | 2 -
> > drivers/pci/controller/dwc/pcie-uniphier.c | 9 +---
> > 14 files changed, 38 insertions(+), 62 deletions(-)
> >
> > --
> > 2.28.0
> >