[PATCH 0/3] PCI: host-generic: Fix driver_data overwriting bugs
Bjorn Helgaas
helgaas at kernel.org
Mon Jun 30 10:06:01 PDT 2025
On Wed, Jun 25, 2025 at 12:18:03PM +0100, Marc Zyngier wrote:
> Geert reports that some drivers do rely on the device driver_data
> field containing a pointer to the bridge structure at the point of
> initialising the root port, while this has been recently changed to
> contain some other data for the benefit of the Apple PCIe driver.
>
> This small series builds on top of Geert previously posted (and
> included as a prefix for reference) fix for the Microchip driver,
> which breaks the Apple driver. This is basically swapping a regression
> for another, which isn't a massive deal at this stage, as the
> follow-up patch fixes things for the Apple driver by adding extra
> tracking.
Is there a bisection hole between patches 1 and 2?
1: PCI: host-generic: Set driver_data before calling gen_pci_init()
2: PCI: apple: Add tracking of probed root ports
If so, would it be practical to avoid the hole by reordering those
patches?
> Finally, we can revert a one-liner that glued the whole thing
> together, and that isn't needed anymore.
>
> All of this is candidate for 6.16, as we have regressed the Microchip
> driver in -rc1, and that fixing it breaks the Apple driver.
>
> Geert Uytterhoeven (1):
> PCI: host-generic: Set driver_data before calling gen_pci_init()
>
> Marc Zyngier (2):
> PCI: apple: Add tracking of probed root ports
> Revert "PCI: ecam: Allow cfg->priv to be pre-populated from the root
> port device"
>
> drivers/pci/controller/pci-host-common.c | 4 +-
> drivers/pci/controller/pcie-apple.c | 53 ++++++++++++++++++++++--
> drivers/pci/ecam.c | 2 -
> 3 files changed, 51 insertions(+), 8 deletions(-)
>
> --
> 2.39.2
>
More information about the linux-riscv
mailing list