Re: [PATCH 0/4] PCI/CXL: Guard reset recovery against inaccessible devices
From: Cheatham, Benjamin
Date: Fri Oct 30 2026 - 17:12:07 EST
I noticed that linux-pci isn't CC'ed. Seems like a big oversight considering 3/4 of the patches
are in the PCI code...
I'd resend to this with that list in the CC, or at least include it in a v2.
Thanks,
Ben
On 9/28/2026 9:04 PM, Richard Cheng wrote:
> During FLR testing, PCI configuration reads returned all ones. The
> kernel could mistake this for reset completion and proceed with MSI-X
> restoration. The resulting MMIO access triggered DPC containment.
>
> This series addresses four issues:
>
> 1. Reject all-ones responses in pci_dev_wait(). Use Command-register
> polling for VFs, whose Vendor ID legitimately reads as all ones.
>
> 2. Return -ETIMEDOUT when readiness polling expires, preventing fallback
> to another reset method.
>
> 3. Check configuration accessibility before restoring PCI state, while
> preserving driver reset callbacks.
>
> 4. Skip CXL decoder MMIO accesses when configuration is inaccessible
> or memory decoding is disabled.
>
>
> Best regards,
> Richard Cheng.
>
> Richard Cheng (4):
> PCI: Reject all-ones responses in pci_dev_wait()
> PCI: Return -ETIMEOUT when reset readiness polling expires
> PCI: Skip state restoration when configuration is inaccessible
> cxl/pci: Guard decoder accesses after reset
>
> drivers/cxl/pci.c | 6 ++++++
> drivers/pci/pci.c | 16 +++++++++-------
> 2 files changed, 15 insertions(+), 7 deletions(-)
>
>
> base-commit: 9eb6419022d81aac6d1d9ead0e1865b451153da5