1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/drivers/pci/controller
Thomas Gleixner 7d04319a05 x86/apic: Convert to IRQCHIP_MOVE_DEFERRED
Instead of marking individual interrupts as safe to be migrated in
arbitrary contexts, mark the interrupt chips, which require the interrupt
to be moved in actual interrupt context, with the new IRQCHIP_MOVE_DEFERRED
flag. This makes more sense because this is a per interrupt chip property
and not restricted to individual interrupts.

That flips the logic from the historical opt-out to a opt-in model. This is
simpler to handle for other architectures, which default to unrestricted
affinity setting. It also allows to cleanup the redundant core logic
significantly.

All interrupt chips, which belong to a top-level domain sitting directly on
top of the x86 vector domain are marked accordingly, unless the related
setup code marks the interrupts with IRQ_MOVE_PCNTXT, i.e. XEN.

No functional change intended.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Steve Wahl <steve.wahl@hpe.com>
Acked-by: Wei Liu <wei.liu@kernel.org>
Link: https://lore.kernel.org/all/20241210103335.563277044@linutronix.de
2025-01-15 21:38:53 +01:00
..
cadence Merge branch 'pci/controller/j721e' 2024-11-25 13:40:58 -06:00
dwc Merge branch 'pci/controller/tegra194' 2024-11-25 13:41:00 -06:00
mobiveil PCI: mobiveil: Silence 'set affinity failed' warning 2024-07-29 12:46:35 -05:00
plda Merge branch 'pci/controller/microchip' 2024-11-25 13:40:59 -06:00
Kconfig PCI: mediatek-gen3: Add Airoha EN7581 support 2024-09-03 13:37:41 +00:00
Makefile PCI: microchip: Move pcie-microchip-host.c to PLDA directory 2024-05-28 11:15:28 -05:00
pci-aardvark.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pci-ftpci100.c PCI: Explicitly include correct DT includes 2023-07-18 14:33:17 -05:00
pci-host-common.c Merge branch 'pci/misc' 2024-07-19 10:10:33 -05:00
pci-host-generic.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pci-hyperv-intf.c PCI: hv: Add a Hyper-V PCI interface driver for software backchannel interface 2019-08-22 00:25:12 -07:00
pci-hyperv.c x86/apic: Convert to IRQCHIP_MOVE_DEFERRED 2025-01-15 21:38:53 +01:00
pci-ixp4xx.c PCI: Explicitly include correct DT includes 2023-07-18 14:33:17 -05:00
pci-loongson.c PCI: loongson: Enable MSI in LS7A Root Complex 2024-07-19 10:07:01 -05:00
pci-mvebu.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pci-rcar-gen2.c PCI: rcar-gen2: Use devm_platform_get_and_ioremap_resource() 2023-07-13 18:12:35 +00:00
pci-tegra.c Merge branch 'pci/resource' 2024-11-25 13:40:55 -06:00
pci-thunder-ecam.c PCI: thunder: Drop error data fabrication when config read fails 2021-11-18 13:39:32 -06:00
pci-thunder-pem.c PCI: Use resource_set_{range,size}() helpers 2024-10-10 17:44:57 -05:00
pci-v3-semi.c Merge branch 'pci/misc' 2023-08-29 11:03:57 -05:00
pci-versatile.c PCI: Remove MODULE_LICENSE so boolean drivers don't look like modules 2023-02-17 08:47:58 -06:00
pci-xgene-msi.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pci-xgene.c PCI: Rename CRS Completion Status to RRS 2024-09-10 19:52:30 -05:00
pcie-altera-msi.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pcie-altera.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pcie-apple.c PCI: controller: Add missing MODULE_DESCRIPTION() macros 2024-07-08 08:36:14 +00:00
pcie-brcmstb.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pcie-hisi-error.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pcie-iproc-bcma.c PCI: Add defines for normal and subtractive PCI bridges 2022-02-17 15:29:35 -06:00
pcie-iproc-msi.c PCI: iproc: Use of_property_read_bool() for boolean properties 2023-07-13 18:09:24 +00:00
pcie-iproc-platform.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pcie-iproc.c PCI: Rename CRS Completion Status to RRS 2024-09-10 19:52:30 -05:00
pcie-iproc.h PCI: iproc: Convert to platform remove callback returning void 2023-06-24 14:12:36 +00:00
pcie-mediatek-gen3.c Merge branch 'pci/controller/mediatek' 2024-11-25 13:40:58 -06:00
pcie-mediatek.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pcie-mt7621.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pcie-rcar-ep.c PCI: endpoint: Remove "core_init_notifier" flag 2024-04-10 17:52:42 +00:00
pcie-rcar-host.c PCI: Fix typos 2024-11-15 14:50:00 -06:00
pcie-rcar.c PCI: rcar: Fix calculating mask for PCIEPAMR register 2020-05-11 11:29:48 +01:00
pcie-rcar.h PCI: rcar: Avoid defines prefixed with CONFIG 2023-03-10 13:34:27 +01:00
pcie-rockchip-ep.c PCI: rockchip-ep: Handle PERST# signal in EP mode 2024-11-25 13:18:36 -06:00
pcie-rockchip-host.c Merge branch 'pci/controller/rockchip' 2024-11-25 13:40:59 -06:00
pcie-rockchip.c PCI: rockchip-ep: Handle PERST# signal in EP mode 2024-11-25 13:18:36 -06:00
pcie-rockchip.h PCI: rockchip-ep: Handle PERST# signal in EP mode 2024-11-25 13:18:36 -06:00
pcie-xilinx-common.h PCI: xilinx-xdma: Add Xilinx XDMA Root Port driver 2023-10-26 15:02:02 +00:00
pcie-xilinx-cpm.c PCI: xilinx-cpm: Move IRQ definitions to a common header 2023-10-26 14:10:42 +00:00
pcie-xilinx-dma-pl.c Merge branch 'pci/controller/xilinx' 2024-09-19 14:25:33 -05:00
pcie-xilinx-nwl.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pcie-xilinx.c PCI: xilinx: Silence 'set affinity failed' warning 2024-08-06 12:52:17 -05:00
vmd.c Merge branch 'pci/controller/vmd' 2024-11-25 13:41:00 -06:00