aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/xen
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@linaro.org>2023-11-28 09:52:41 +0300
committerJuergen Gross <jgross@suse.com>2023-11-28 12:48:27 +0100
commit7f3da4b698bcc21a6df0e7f114af71d53a3e26ac (patch)
treeeae4e7556135ed22cbf6d916bb17eec28f68586f /drivers/xen
parentdb2832309a82b9acc4b8cc33a1831d36507ec13e (diff)
downloadlinux-7f3da4b698bcc21a6df0e7f114af71d53a3e26ac.tar.gz
xen/events: fix error code in xen_bind_pirq_msi_to_irq()
Return -ENOMEM if xen_irq_init() fails. currently the code returns an uninitialized variable or zero. Fixes: 5dd9ad32d775 ("xen/events: drop xen_allocate_irqs_dynamic()") Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org> Reviewed-by: Juergen Gross <jgross@ssue.com> Link: https://lore.kernel.org/r/3b9ab040-a92e-4e35-b687-3a95890a9ace@moroto.mountain Signed-off-by: Juergen Gross <jgross@suse.com>
Diffstat (limited to 'drivers/xen')
-rw-r--r--drivers/xen/events/events_base.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index f5edb9e27e3ca..b8cfea7812d6b 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1110,8 +1110,10 @@ int xen_bind_pirq_msi_to_irq(struct pci_dev *dev, struct msi_desc *msidesc,
for (i = 0; i < nvec; i++) {
info = xen_irq_init(irq + i);
- if (!info)
+ if (!info) {
+ ret = -ENOMEM;
goto error_irq;
+ }
irq_set_chip_and_handler_name(irq + i, &xen_pirq_chip, handle_edge_irq, name);