Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6579436f authored by ruanjinjie's avatar ruanjinjie Committed by Greg Kroah-Hartman
Browse files

xen/platform-pci: add missing free_irq() in error path



[ Upstream commit c53717e1e3f0d0f9129b2e0dbc6dcc5e0a8132e9 ]

free_irq() is missing in case of error in platform_pci_probe(), fix that.

Signed-off-by: default avatarruanjinjie <ruanjinjie@huawei.com>
Reviewed-by: default avatarOleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Link: https://lore.kernel.org/r/20221114112124.1965611-1-ruanjinjie@huawei.com


Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 375e79c5
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -137,7 +137,7 @@ static int platform_pci_probe(struct pci_dev *pdev,
		if (ret) {
			dev_warn(&pdev->dev, "Unable to set the evtchn callback "
					 "err=%d\n", ret);
			goto out;
			goto irq_out;
		}
	}

@@ -145,13 +145,16 @@ static int platform_pci_probe(struct pci_dev *pdev,
	grant_frames = alloc_xen_mmio(PAGE_SIZE * max_nr_gframes);
	ret = gnttab_setup_auto_xlat_frames(grant_frames);
	if (ret)
		goto out;
		goto irq_out;
	ret = gnttab_init();
	if (ret)
		goto grant_out;
	return 0;
grant_out:
	gnttab_free_auto_xlat_frames();
irq_out:
	if (!xen_have_vector_callback)
		free_irq(pdev->irq, pdev);
out:
	pci_release_region(pdev, 0);
mem_out: