[PATCH 5.13 182/266] powerpc/xive: Fix error handling when allocating an IPI

From: Greg Kroah-Hartman
Date: Thu Jul 15 2021 - 15:38:36 EST


From: Cédric Le Goater <clg@xxxxxxxx>

commit 3f601608b71c3ca1e199898cd16f09d707fedb56 upstream.

This is a smatch warning:

arch/powerpc/sysdev/xive/common.c:1161 xive_request_ipi() warn: unsigned 'xid->irq' is never less than zero.

Fixes: fd6db2892eba ("powerpc/xive: Modernize XIVE-IPI domain with an 'alloc' handler")
Cc: stable@xxxxxxxxxxxxxxx # v5.13
Reported-by: kernel test robot <lkp@xxxxxxxxx>
Signed-off-by: Cédric Le Goater <clg@xxxxxxxx>
Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
Link: https://lore.kernel.org/r/20210701152412.1507612-1-clg@xxxxxxxx
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
arch/powerpc/sysdev/xive/common.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)

--- a/arch/powerpc/sysdev/xive/common.c
+++ b/arch/powerpc/sysdev/xive/common.c
@@ -1153,11 +1153,10 @@ static int __init xive_request_ipi(void)
* Since the HW interrupt number doesn't have any meaning,
* simply use the node number.
*/
- xid->irq = irq_domain_alloc_irqs(ipi_domain, 1, node, &info);
- if (xid->irq < 0) {
- ret = xid->irq;
+ ret = irq_domain_alloc_irqs(ipi_domain, 1, node, &info);
+ if (ret < 0)
goto out_free_xive_ipis;
- }
+ xid->irq = ret;

snprintf(xid->name, sizeof(xid->name), "IPI-%d", node);