Commit 6260f642 authored by Pingfan Liu's avatar Pingfan Liu Committed by Heiko Carstens

s390/irq: utilize RCU instead of irq_lock_sparse() in show_msi_interrupt()

As demonstrated by commit 74bdf781 ("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: default avatarPingfan Liu <kernelfans@gmail.com>
Link: https://lore.kernel.org/r/20220422100212.22666-1-kernelfans@gmail.comSigned-off-by: default avatarHeiko Carstens <hca@linux.ibm.com>
parent 9a077317
...@@ -205,7 +205,7 @@ static void show_msi_interrupt(struct seq_file *p, int irq) ...@@ -205,7 +205,7 @@ static void show_msi_interrupt(struct seq_file *p, int irq)
unsigned long flags; unsigned long flags;
int cpu; int cpu;
irq_lock_sparse(); rcu_read_lock();
desc = irq_to_desc(irq); desc = irq_to_desc(irq);
if (!desc) if (!desc)
goto out; goto out;
...@@ -224,7 +224,7 @@ static void show_msi_interrupt(struct seq_file *p, int irq) ...@@ -224,7 +224,7 @@ static void show_msi_interrupt(struct seq_file *p, int irq)
seq_putc(p, '\n'); seq_putc(p, '\n');
raw_spin_unlock_irqrestore(&desc->lock, flags); raw_spin_unlock_irqrestore(&desc->lock, flags);
out: out:
irq_unlock_sparse(); rcu_read_unlock();
} }
/* /*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment