On Tue, Oct 12, 2021 at 06:41:33PM +0200, Marek Behún wrote: > MSI domain callback .alloc() (implemented by advk_msi_irq_domain_alloc() > function) should return zero on success, since non-zero value indicates > failure. AFAICS the .alloc() method is called in: irq_domain_alloc_irqs_hierarchy() which in turn is called by: __irq_domain_alloc_irqs() -> that checks (ret < 0) irq_domain_push_irq() -> that checks for rv != 0 irq_domain_alloc_irqs_parent() called by many drivers and also by msi_domain_alloc() (that checks ret < 0) This patch is fine, I am just asking, given the above: - How did you detect it (given that aardvark would not fail ret < 0) ? - Should we consolidate the .alloc() return value handling ? Apologies if I missed something in the IRQ domain code. Lorenzo > When the driver was converted to generic MSI API in commit f21a8b1b6837 > ("PCI: aardvark: Move to MSI handling using generic MSI support"), it > was converted so that it returns hwirq number. > > Fix this. > > Fixes: f21a8b1b6837 ("PCI: aardvark: Move to MSI handling using generic MSI support") > Signed-off-by: Pali Rohár <pali@xxxxxxxxxx> > Reviewed-by: Marek Behún <kabel@xxxxxxxxxx> > Signed-off-by: Marek Behún <kabel@xxxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx > --- > drivers/pci/controller/pci-aardvark.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/pci/controller/pci-aardvark.c b/drivers/pci/controller/pci-aardvark.c > index 10476c00b312..b45ff2911c80 100644 > --- a/drivers/pci/controller/pci-aardvark.c > +++ b/drivers/pci/controller/pci-aardvark.c > @@ -1138,7 +1138,7 @@ static int advk_msi_irq_domain_alloc(struct irq_domain *domain, > domain->host_data, handle_simple_irq, > NULL, NULL); > > - return hwirq; > + return 0; > } > > static void advk_msi_irq_domain_free(struct irq_domain *domain, > -- > 2.32.0 >