]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commit
genirq: Speedup show_interrupts()
authorEric Dumazet <edumazet@google.com>
Wed, 20 Jun 2018 15:03:32 +0000 (08:03 -0700)
committerThomas Gleixner <tglx@linutronix.de>
Fri, 22 Jun 2018 12:22:58 +0000 (14:22 +0200)
commit74bdf7815dfb3805a37b0bba615814063a227bf5
tree7057de945fe8629787d7f7767ff11c905157c5af
parent0a13ec0bbc42bddf90ab6a444df8aaa67c148b16
genirq: Speedup show_interrupts()

Since commit 425a5072dcd1 ("genirq: Free irq_desc with rcu"),
show_interrupts() can be switched to rcu locking, which removes possible
contention on sparse_irq_lock.

The per_cpu count scan and print can be done without holding desc spinlock.

And there is no need to call kstat_irqs_cpu() and abuse irq_to_desc() while
holding rcu read lock, since desc and desc->kstat_irqs wont disappear or
change.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Eric Dumazet <eric.dumazet@gmail.com>
Link: https://lkml.kernel.org/r/20180620150332.163320-1-edumazet@google.com
kernel/irq/proc.c