On Wed, 3 Mar 2021 18:48:53 +0100 Cédric Le Goater <c...@kaod.org> wrote:
> Now that the IPI interrupt has its own domain, the checks on the HW > interrupt number XIVE_IPI_HW_IRQ and on the chip can be replaced by a > check on the domain. > > Signed-off-by: Cédric Le Goater <c...@kaod.org> > --- Shouldn't this have the following tags ? Reported-by: kernel test robot <l...@intel.com> Reported-by: Dan Carpenter <dan.carpen...@oracle.com> Fixes: 930914b7d528 ("powerpc/xive: Add a debugfs file to dump internal XIVE state") Anyway, Reviewed-by: Greg Kurz <gr...@kaod.org> > arch/powerpc/sysdev/xive/common.c | 18 ++++-------------- > 1 file changed, 4 insertions(+), 14 deletions(-) > > diff --git a/arch/powerpc/sysdev/xive/common.c > b/arch/powerpc/sysdev/xive/common.c > index 678680531d26..7581cb12bb53 100644 > --- a/arch/powerpc/sysdev/xive/common.c > +++ b/arch/powerpc/sysdev/xive/common.c > @@ -1579,17 +1579,14 @@ static void xive_debug_show_cpu(struct seq_file *m, > int cpu) > seq_puts(m, "\n"); > } > > -static void xive_debug_show_irq(struct seq_file *m, u32 hw_irq, struct > irq_data *d) > +static void xive_debug_show_irq(struct seq_file *m, struct irq_data *d) > { > - struct irq_chip *chip = irq_data_get_irq_chip(d); > + unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); > int rc; > u32 target; > u8 prio; > u32 lirq; > > - if (!is_xive_irq(chip)) > - return; > - > rc = xive_ops->get_irq_config(hw_irq, &target, &prio, &lirq); > if (rc) { > seq_printf(m, "IRQ 0x%08x : no config rc=%d\n", hw_irq, rc); > @@ -1627,16 +1624,9 @@ static int xive_core_debug_show(struct seq_file *m, > void *private) > > for_each_irq_desc(i, desc) { > struct irq_data *d = irq_desc_get_irq_data(desc); > - unsigned int hw_irq; > - > - if (!d) > - continue; > - > - hw_irq = (unsigned int)irqd_to_hwirq(d); > > - /* IPIs are special (HW number 0) */ > - if (hw_irq != XIVE_IPI_HW_IRQ) > - xive_debug_show_irq(m, hw_irq, d); > + if (d->domain == xive_irq_domain) > + xive_debug_show_irq(m, d); > } > return 0; > }