summaryrefslogtreecommitdiff
path: root/drivers/xen/events/events_base.c
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@linaro.org>2023-11-28 09:52:41 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-03-01 15:35:04 +0300
commit980278aca1f82c4b80dfc3e72bdfacce8e739680 (patch)
treeebf08e7a95dacf12f9f9fc7970187dd784a4998e /drivers/xen/events/events_base.c
parent658750e3d8ede6006deee99cb33948133d51fbf0 (diff)
downloadlinux-980278aca1f82c4b80dfc3e72bdfacce8e739680.tar.xz
xen/events: fix error code in xen_bind_pirq_msi_to_irq()
commit 7f3da4b698bcc21a6df0e7f114af71d53a3e26ac upstream. 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> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/xen/events/events_base.c')
-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 36ba3ef6ef01..0c5259c68ade 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1099,8 +1099,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);