linux/kernel/irq
Marc Zyngier 3f9d45d802 FROMLIST: genirq: Allow an interrupt to be marked as 'raw'
Some interrupts (such as the rescheduling IPI) rely on not going through
the irq_enter()/irq_exit() calls. To distinguish such interrupts, add
a new IRQ flag that allows the low-level handling code to sidestep the
enter()/exit() calls.

Only the architecture code is expected to use this. It will do the wrong
thing on normal interrupts. Note that this is a band-aid until we can
move to some more correct infrastructure (such as kernel/entry/common.c).

Bug: 191808738
Link: https://lore.kernel.org/lkml/20201124141449.572446-3-maz@kernel.org/
Change-Id: I0609a8b689219ba9e769c8b9f7fcf1e77a0ff1ca
Signed-off-by: Marc Zyngier <maz@kernel.org>
[minor port to 5.10]
Signed-off-by: Stephen Dickey <dickey@codeaurora.org>
2021-06-23 18:11:55 +00:00
..
affinity.c genirq/affinity: Remove const qualifier from node_to_cpumask argument 2019-08-28 12:20:43 +02:00
autoprobe.c genirq: Delay deactivation in free_irq() 2019-07-03 10:12:28 +02:00
chip.c FROMLIST: genirq: Add __irq_modify_status() helper to clear/set special flags 2021-06-23 18:11:38 +00:00
cpuhotplug.c ANDROID: Reduce log level for couple of prints in hotplug flow 2020-11-10 20:07:32 +00:00
debug.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/pmladek/printk 2018-02-01 13:36:15 -08:00
debugfs.c FROMLIST: genirq: Allow an interrupt to be marked as 'raw' 2021-06-23 18:11:55 +00:00
devres.c genirq/devres: Use struct_size() in devm_kzalloc() 2019-04-16 21:54:03 +02:00
dummychip.c genirq: Add missing SPDX identifiers 2018-03-20 14:23:28 +01:00
generic-chip.c genirq: Add missing SPDX identifiers 2018-03-20 14:23:28 +01:00
handle.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
internals.h genirq/chip: Use the first chip in irq_chip_compose_msi_msg() 2020-09-16 16:52:28 +02:00
ipi.c genirq: Fix various typos in comments 2018-12-18 14:22:28 +01:00
irq_sim.c genirq/irq_sim: Simplify the API 2020-05-18 10:30:21 +01:00
irqdesc.c FROMLIST: genirq: Allow an interrupt to be marked as 'raw' 2021-06-23 18:11:55 +00:00
irqdomain.c UPSTREAM: irqdomain: Mark fwnodes when their irqdomain is added/removed 2021-02-25 15:16:39 -08:00
Kconfig FROMLIST: genirq: Allow an interrupt to be marked as 'raw' 2021-06-23 18:11:55 +00:00
Makefile genirq/timings: Add selftest for circular array 2019-06-12 10:47:04 +02:00
manage.c ANDROID: irq: manage: Export irq_do_set_affinity symbol 2021-05-06 14:58:19 +00:00
matrix.c genirq/matrix: Prevent allocation counter corruption 2021-05-11 14:47:17 +02:00
migration.c genirq/migration: Avoid out of line call if pending is not set 2018-06-06 15:18:20 +02:00
msi.c genirq/msi: Activate Multi-MSI early when MSI_FLAG_ACTIVATE_EARLY is set 2021-02-10 09:29:17 +01:00
pm.c genirq/PM: Introduce IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND flag 2020-10-06 11:23:41 +01:00
proc.c ANDROID: irq/proc: use active cpus for allowed irq affinity 2021-01-12 22:00:03 +00:00
resend.c FROMGIT: genirq: Walk the irq_data hierarchy when resending an interrupt 2020-10-01 11:07:45 -07:00
settings.h FROMLIST: genirq: Allow an interrupt to be marked as 'raw' 2021-06-23 18:11:55 +00:00
spurious.c genirq: Add missing __must_hold() sparse annotation 2020-01-09 18:03:37 +01:00
timings.c kernel/: fix repeated words in comments 2020-10-16 11:11:19 -07:00