aboutsummaryrefslogtreecommitdiffstats
path: root/fs
diff options
authorThomas Gleixner <tglx@kernel.org>2026-05-17 22:02:49 +0200
committerThomas Gleixner <tglx@kernel.org>2026-05-26 16:21:15 +0200
commit171cc0d9eed1cad5de7ce6a212efbeda390edb0f (patch)
tree25f3a0cbb7dfcc4c45468f8f7434ada5933ca20d /fs
parent61b51a167c524b65a59b1342e70c2008d514a796 (diff)
downloadlinux-next-history-171cc0d9eed1cad5de7ce6a212efbeda390edb0f.tar.gz
genirq/proc: Speed up /proc/interrupts iteration
Reading /proc/interrupts iterates over the interrupt number space one by one and looks up the descriptors one by one. That's just a waste of time. When CONFIG_GENERIC_IRQ_SHOW is enabled this can utilize the maple tree and cache the descriptor pointer efficiently for the sequence file operations. Implement a CONFIG_GENERIC_IRQ_SHOW specific version in the core code and leave the fs/proc/ variant for the legacy architectures which ignore generic code. This reduces the time wasted for looking up the next record significantly. Signed-off-by: Thomas Gleixner <tglx@kernel.org> Tested-by: Michael Kelley <mhklinux@outlook.com> Reviewed-by: Dmitry Ilvokhin <d@ilvokhin.com> Link: https://patch.msgid.link/20260517194932.165280601@kernel.org
Diffstat (limited to 'fs')
-rw-r--r--fs/proc/Makefile4
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/proc/Makefile b/fs/proc/Makefile
index 7b4db9c56e6a7..8bc615ff84e5d 100644
--- a/fs/proc/Makefile
+++ b/fs/proc/Makefile
@@ -16,7 +16,9 @@ proc-y += cmdline.o
proc-y += consoles.o
proc-y += cpuinfo.o
proc-y += devices.o
-proc-y += interrupts.o
+ifneq ($(CONFIG_GENERIC_IRQ_SHOW),y)
+proc-y += interrupts.o
+endif
proc-y += loadavg.o
proc-y += meminfo.o
proc-y += stat.o