diff options
author | Pingfan Liu <kernelfans@gmail.com> | 2022-04-22 18:02:12 +0800 |
---|---|---|
committer | Heiko Carstens <hca@linux.ibm.com> | 2022-04-27 12:53:34 +0200 |
commit | 6260f6427c944279f8aca108140db900699a30de (patch) | |
tree | fd36fe1dd1204ba09ac42c14acfe821c09665fdc /arch/s390/kernel/irq.c | |
parent | 9a07731702d9e5787770f44d2be0c15742f27e39 (diff) | |
download | linux-6260f6427c944279f8aca108140db900699a30de.tar.gz |
s390/irq: utilize RCU instead of irq_lock_sparse() in show_msi_interrupt()
As demonstrated by commit 74bdf7815dfb ("genirq: Speedup
show_interrupts()"), irq_desc can be accessed safely in RCU read section.
Hence here resorting to rcu read lock to get rid of irq_lock_sparse().
Signed-off-by: Pingfan Liu <kernelfans@gmail.com>
Link: https://lore.kernel.org/r/20220422100212.22666-1-kernelfans@gmail.com
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Diffstat (limited to 'arch/s390/kernel/irq.c')
-rw-r--r-- | arch/s390/kernel/irq.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/s390/kernel/irq.c b/arch/s390/kernel/irq.c index 3033f616e256..45393919fe61 100644 --- a/arch/s390/kernel/irq.c +++ b/arch/s390/kernel/irq.c @@ -205,7 +205,7 @@ static void show_msi_interrupt(struct seq_file *p, int irq) unsigned long flags; int cpu; - irq_lock_sparse(); + rcu_read_lock(); desc = irq_to_desc(irq); if (!desc) goto out; @@ -224,7 +224,7 @@ static void show_msi_interrupt(struct seq_file *p, int irq) seq_putc(p, '\n'); raw_spin_unlock_irqrestore(&desc->lock, flags); out: - irq_unlock_sparse(); + rcu_read_unlock(); } /* |