ACK/Cmnt: [SRU] [RESEND] [J/K] [PATCH 00/10] Disable PTM when device is suspended for all PCIe devices
Kai-Heng Feng
kai.heng.feng at canonical.com
Tue Oct 11 13:38:20 UTC 2022
On Tue, Oct 11, 2022 at 3:56 PM Stefan Bader <stefan.bader at canonical.com> wrote:
>
> On 11.10.22 05:41, Kai-Heng Feng wrote:
> > BugLink: https://bugs.launchpad.net/bugs/1988797
> >
> > [Impact]
> > Unsupporeted PTM requests can flood kernel dmesg. It can also prevent
> > the system from suspending because the AER IRQ can never be quiesced.
> >
> > [Fix]
> > Disable PTM when PCIe device is suspended.
> >
> > [Test]
> > No more AER in dmesg, and affected system can suspend correctly.
> >
> > [Where problems could occur]
> > According to PCIe spec, disabling PTM is suggested, but it's possible
> > that there are devices don't like PTM to be disabled during suspend.
>
> What would be the visible effect if this happens? Errors on such devices or
> potentially they remain suspended? This is a somewhat substantial change and
> with it just reaching linux-next I would suspect there is not much experience
> with potential side effects. So it would be good to know what to watch out for.
The change appears to be large, but the functional change is actually
quite simple - to disable PTM on both ports and endpoints, for both
system-wide suspend and runtime suspend.
In reality this won't affect too many PCIe devices, AFAIK devices that
support PTM are quite limited.
I really can't say what's the potential visible effect, as the PCIe
spec is very arcane and a single stuff can be scattered to different
hundred pages.
Kai-Heng
>
> Acked-by: Stefan Bader <stefan.bader at canonical.com>
> >
> > Bjorn Helgaas (9):
> > PCI/PTM: Cache PTM Capability offset
> > PCI/PTM: Add pci_upstream_ptm() helper
> > PCI/PTM: Separate configuration and enable
> > PCI/PTM: Add pci_suspend_ptm() and pci_resume_ptm()
> > PCI/PTM: Move pci_ptm_info() body into its only caller
> > PCI/PTM: Preserve RsvdP bits in PTM Control register
> > PCI/PTM: Reorder functions in logical order
> > PCI/PTM: Consolidate PTM interface declarations
> > PCI/PM: Always disable PTM for all devices during suspend
> >
> > Rajvi Jingar (1):
> > PCI/PM: Simplify pci_pm_suspend_noirq()
> >
> > drivers/pci/pci-driver.c | 30 ++--
> > drivers/pci/pci.c | 28 +---
> > drivers/pci/pci.h | 14 +-
> > drivers/pci/pcie/ptm.c | 300 ++++++++++++++++++++++-----------------
> > include/linux/pci.h | 3 +
> > 5 files changed, 199 insertions(+), 176 deletions(-)
> >
>
More information about the kernel-team
mailing list