From: Bjorn Helgaas <helgaas@kernel.org>
To: Kai-Heng Feng <kai.heng.feng@canonical.com>
Cc: Hannes Reinecke <hare@suse.com>,
Chaitanya Kulkarni <kch@nvidia.com>,
Sagi Grimberg <sagi@grimberg.me>,
"Rafael J . Wysocki" <rafael@kernel.org>,
linux-pci@vger.kernel.org,
Mahesh J Salgaonkar <mahesh@linux.ibm.com>,
linux-nvme@lists.infradead.org, linux-kernel@vger.kernel.org,
Bjorn Helgaas <bhelgaas@google.com>,
Oliver O'Halloran <oohall@gmail.com>,
Bagas Sanjaya <bagasdotme@gmail.com>,
Keith Busch <kbusch@kernel.org>,
Thomas Crider <gloriouseggroll@gmail.com>,
linuxppc-dev@lists.ozlabs.org, Christoph Hellwig <hch@lst.de>,
regressions@lists.linux.dev
Subject: [PATCH v9 0/2] PCI: Disable AER & DPC on suspend
Date: Tue, 18 Jun 2024 15:49:44 -0500 [thread overview]
Message-ID: <20240618204946.1271042-1-helgaas@kernel.org> (raw)
From: Bjorn Helgaas <bhelgaas@google.com>
This is an old series from Kai-Heng that I didn't handle soon enough. The
intent is to fix several suspend/resume issues:
- Spurious wakeup from s2idle
(https://bugzilla.kernel.org/show_bug.cgi?id=216295)
- Steam Deck doesn't resume after suspend
(https://bugzilla.kernel.org/show_bug.cgi?id=218090)
- Unexpected ACS error and DPC event when resuming after suspend
(https://bugzilla.kernel.org/show_bug.cgi?id=209149)
It seems that a glitch when the link is powered down during suspend causes
errors to be logged by AER. When AER is enabled, this causes an AER
interrupt, and if that IRQ is shared with PME, it may cause a spurious
wakeup.
Also, errors logged during link power-down and power-up seem to cause
unwanted error reporting during resume.
This series disables AER interrupts, DPC triggering, and DPC interrupts
during suspend. On resume, it clears AER and DPC error status before
re-enabling their interrupts.
I added a couple cosmetic changes for the v9, but this is essentially all
Kai-Heng's work. I'm just posting it as a v9 because I failed to act on
this earlier.
Bjorn
v9:
- Drop pci_ancestor_pr3_present() and pm_suspend_via_firmware; do it
unconditionally
- Clear DPC status before re-enabling DPC interrupt
v8: https://lore.kernel.org/r/20240416043225.1462548-1-kai.heng.feng@canonical.com
- Wording.
- Add more bug reports.
v7:
- Wording.
- Disable AER completely (again) if power will be turned off
- Disable DPC completely (again) if power will be turned off
v6: https://lore.kernel.org/r/20230512000014.118942-1-kai.heng.feng@canonical.com
v5: https://lore.kernel.org/r/20230511133610.99759-1-kai.heng.feng@canonical.com
- Wording.
v4: https://lore.kernel.org/r/20230424055249.460381-1-kai.heng.feng@canonical.com
v3: https://lore.kernel.org/r/20230420125941.333675-1-kai.heng.feng@canonical.com
- Correct subject.
v2: https://lore.kernel.org/r/20230420015830.309845-1-kai.heng.feng@canonical.com
- Only disable AER IRQ.
- No more AER check on PME IRQ#.
- Use AER helper.
- Only disable DPC IRQ.
- No more DPC check on PME IRQ#.
v1: https://lore.kernel.org/r/20220727013255.269815-1-kai.heng.feng@canonical.com
Kai-Heng Feng (2):
PCI/AER: Disable AER service on suspend
PCI/DPC: Disable DPC service on suspend
drivers/pci/pcie/aer.c | 18 +++++++++++++
drivers/pci/pcie/dpc.c | 60 +++++++++++++++++++++++++++++++++---------
2 files changed, 66 insertions(+), 12 deletions(-)
--
2.34.1
next reply other threads:[~2024-06-18 20:50 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-18 20:49 Bjorn Helgaas [this message]
2024-06-18 20:49 ` [PATCH v9 1/2] PCI/AER: Disable AER service on suspend Bjorn Helgaas
2024-06-18 20:49 ` [PATCH v9 2/2] PCI/DPC: Disable DPC " Bjorn Helgaas
2024-06-19 10:52 ` [PATCH v9 0/2] PCI: Disable AER & DPC " Rafael J. Wysocki
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240618204946.1271042-1-helgaas@kernel.org \
--to=helgaas@kernel.org \
--cc=bagasdotme@gmail.com \
--cc=bhelgaas@google.com \
--cc=gloriouseggroll@gmail.com \
--cc=hare@suse.com \
--cc=hch@lst.de \
--cc=kai.heng.feng@canonical.com \
--cc=kbusch@kernel.org \
--cc=kch@nvidia.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=linux-pci@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=mahesh@linux.ibm.com \
--cc=oohall@gmail.com \
--cc=rafael@kernel.org \
--cc=regressions@lists.linux.dev \
--cc=sagi@grimberg.me \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).