On Mon, Dec 09, 2024 at 02:06:22PM +0100, Philipp Stanner wrote: > @Driver-Maintainers: Your driver might be touched by patch "Remove > devres from pci_intx()". You might want to take a look. > > Changes in v3: > - Add Thomas' RB. > > Changes in v2: > - Drop pci_intx() deprecation patch. > - ata: Add RB from Sergey and Niklas. > - wifi: Add AB by Kalle. > - Drop INTx deprecation patch > - Drop ALSA / hda_intel patch because pci_intx() was removed from > there in the meantime. > > Changes since the RFC [1]: > - Add a patch deprecating pci{m}_intx(). (Heiner, Andy, Me) > - Add Acked-by's already given. > - Export pcim_intx() as a GPL function. (Alex) > - Drop patch for rts5280, since this driver will be removed quite > soon. (Philipp Hortmann, Greg) > - Use early-return in pci_intx_unmanaged() and pci_intx(). (Andy) > > Hi all, > > this series removes a problematic feature from pci_intx(). That function > sometimes implicitly uses devres for automatic cleanup. We should get > rid of this implicit behavior. > > To do so, a pci_intx() version that is always-managed, and one that is > never-managed are provided. Then, all pci_intx() users are ported to the > version they need. Afterwards, pci_intx() can be cleaned up and the > users of the never-managed version be ported back to pci_intx(). > > This way we'd get this PCI API consistent again. > > Patch "Remove devres from pci_intx()" obviously reverts the previous > patches that made drivers use pci_intx_unmanaged(). But this way it's > easier to review and approve. It also makes sure that each checked out > commit should provide correct behavior, not just the entire series as a > whole. > > Merge plan for this is to enter through the PCI tree. > > [1] https://lore.kernel.org/all/20241009083519.10088-1-pstanner@xxxxxxxxxx/ Applied the ones with maintainer acks to pci/devres for v6.14, thanks! I'll poke the ones that haven't been acked yet. > Philipp Stanner (11): > PCI: Prepare removing devres from pci_intx() > drivers/xen: Use never-managed version of pci_intx() > net/ethernet: Use never-managed version of pci_intx() > net/ntb: Use never-managed version of pci_intx() > misc: Use never-managed version of pci_intx() > vfio/pci: Use never-managed version of pci_intx() > PCI: MSI: Use never-managed version of pci_intx() > ata: Use always-managed version of pci_intx() > wifi: qtnfmac: use always-managed version of pcim_intx() > HID: amd_sfh: Use always-managed version of pcim_intx() > Remove devres from pci_intx() > > drivers/ata/ahci.c | 2 +- > drivers/ata/ata_piix.c | 2 +- > drivers/ata/pata_rdc.c | 2 +- > drivers/ata/sata_sil24.c | 2 +- > drivers/ata/sata_sis.c | 2 +- > drivers/ata/sata_uli.c | 2 +- > drivers/ata/sata_vsc.c | 2 +- > drivers/hid/amd-sfh-hid/amd_sfh_pcie.c | 4 ++-- > drivers/hid/amd-sfh-hid/sfh1_1/amd_sfh_init.c | 2 +- > .../wireless/quantenna/qtnfmac/pcie/pcie.c | 2 +- > drivers/pci/devres.c | 24 +++---------------- > drivers/pci/pci.c | 16 +++---------- > include/linux/pci.h | 1 + > 13 files changed, 18 insertions(+), 45 deletions(-) > > -- > 2.47.1 >