linux/drivers
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
..
accel
accessibility
acpi power supply and reset changes for the 6.13 series 2024-11-28 09:28:09 -08:00
amba
android Char/Misc/IIO/Whatever driver subsystem updates for 6.13-rc1 2024-11-29 11:58:27 -08:00
ata pci-v6.13-changes 2024-11-26 18:05:44 -08:00
atm Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
auxdisplay Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
base Driver core changes for 6.13-rc1 2024-11-29 11:43:29 -08:00
bcma Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
block Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
bluetooth Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
bus Char/Misc/IIO/Whatever driver subsystem updates for 6.13-rc1 2024-11-29 11:58:27 -08:00
cache
cdrom Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
cdx Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
char Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
clk The core framework gained a clk provider helper, a clk consumer helper, and 2024-11-22 17:02:25 -08:00
clocksource Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
comedi
connector
counter Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
cpufreq powerpc updates for 6.13 2024-11-23 10:44:31 -08:00
cpuidle Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
crypto pci-v6.13-changes 2024-11-26 18:05:44 -08:00
cxl Driver core changes for 6.13-rc1 2024-11-29 11:43:29 -08:00
dax libnvdimm additions for 6.13 2024-11-25 18:31:48 -08:00
dca
devfreq Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
dio
dma dmaengine updates for v6.13 2024-11-27 13:25:47 -08:00
dma-buf
dpll
edac Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
eisa
extcon Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
firewire firewire updates for v6.13 2024-11-25 17:12:54 -08:00
firmware Char/Misc/IIO/Whatever driver subsystem updates for 6.13-rc1 2024-11-29 11:58:27 -08:00
fpga Char/Misc/IIO/Whatever driver subsystem updates for 6.13-rc1 2024-11-29 11:58:27 -08:00
fsi Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
gnss
gpio Driver core changes for 6.13-rc1 2024-11-29 11:43:29 -08:00
gpu Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
greybus
hid Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
hsi Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
hte Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
hv Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
hwmon hwmon: (aquacomputer_d5next) Fix length of speed_input array 2024-11-24 07:36:47 -08:00
hwspinlock Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
hwtracing Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
i2c Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
i3c Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
idle
iio Char/Misc/IIO/Whatever driver subsystem updates for 6.13-rc1 2024-11-29 11:58:27 -08:00
infiniband Driver core changes for 6.13-rc1 2024-11-29 11:43:29 -08:00
input Input updates for v6.13-rc0 2024-11-25 10:31:39 -08:00
interconnect
iommu x86/apic: Convert to IRQCHIP_MOVE_DEFERRED 2025-01-15 21:38:53 +01:00
ipack
irqchip irqchip/loongarch-avec: Add multi-nodes topology support 2025-01-15 10:19:20 +01:00
isdn
leds - Removed unused local header files from various drivers. 2024-11-22 16:25:20 -08:00
macintosh Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
mailbox TTY / Serial driver updates for 6.13-rc1 2024-11-30 09:03:16 -08:00
mcb Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
md block-6.13-20242901 2024-11-30 15:47:29 -08:00
media media updates for v6.13-rc1 2024-11-20 14:05:34 -08:00
memory Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
memstick Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
message
mfd - Several drivers, including atmel-flexcom/rk8xx-core, palmas, and 2024-11-22 16:19:47 -08:00
misc Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
mmc MMC core: 2024-11-20 12:51:32 -08:00
most
mtd This pull request contains updates for JFFS2, UBI and UBIFS: 2024-11-30 10:32:47 -08:00
mux
net Including fixes from bluetooth. 2024-11-28 10:15:20 -08:00
nfc
ntb
nubus
nvdimm Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
nvme Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
nvmem Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
of Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
opp Additional power management updates for 6.13-rc1 2024-11-27 14:40:33 -08:00
parisc Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
parport Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
pci x86/apic: Convert to IRQCHIP_MOVE_DEFERRED 2025-01-15 21:38:53 +01:00
pcmcia Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
peci
perf arm64 fixes for 6.13-rc1: 2024-11-30 14:33:44 -08:00
phy Driver core changes for 6.13-rc1 2024-11-29 11:43:29 -08:00
pinctrl Driver core changes for 6.13-rc1 2024-11-29 11:43:29 -08:00
platform Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
pmdomain Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
pnp
power power supply and reset changes for the 6.13 series 2024-11-28 09:28:09 -08:00
powercap Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
pps Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
ps3 ps3: Correct some typos in comments 2024-11-15 00:32:29 +11:00
ptp Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
pwm
rapidio
ras
regulator regulator: Fixes for v6.13 2024-11-28 09:40:53 -08:00
remoteproc remoteproc: qcom: wcss: Remove double assignment in q6v5_wcss_probe() 2024-11-15 20:36:27 -08:00
reset Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
rpmsg Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
rtc RTC for 6.13 2024-11-30 11:18:16 -08:00
s390 Driver core changes for 6.13-rc1 2024-11-29 11:43:29 -08:00
sbus Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
scsi Driver core changes for 6.13-rc1 2024-11-29 11:43:29 -08:00
sh sh updates for v6.13 2024-11-30 14:45:29 -08:00
siox
slimbus Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
soc Networking changes for 6.13. 2024-11-21 08:28:08 -08:00
soundwire Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
spi spi: Fixes for v6.13 2024-11-28 10:06:00 -08:00
spmi Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
ssb
staging Char/Misc/IIO/Whatever driver subsystem updates for 6.13-rc1 2024-11-29 11:58:27 -08:00
target SCSI misc on 20241125 2024-11-25 18:50:55 -08:00
tc
tee Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
thermal Additional thermal control updates for 6.13-rc1 2024-11-27 14:36:00 -08:00
thunderbolt USB / Thunderbolt (USB4) changes for 6.13-rc1 2024-11-29 11:19:31 -08:00
tty Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
ufs Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
uio Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
usb Kbuild updates for v6.13 2024-11-30 13:41:50 -08:00
vdpa
vfio Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
vhost
video Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
virt Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
virtio Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
w1 Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
watchdog Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
xen x86/apic: Convert to IRQCHIP_MOVE_DEFERRED 2025-01-15 21:38:53 +01:00
zorro
Kconfig
Makefile