From 092c126af578cd6b3b3e8dd1dea3d4bd14856086 Mon Sep 17 00:00:00 2001 From: Sven Schnelle Date: Thu, 29 Oct 2015 21:51:36 +0100 Subject: [PATCH] bcwc_pcie: release memory regions if a single pci_request_region() fails --- bcwc_drv.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/bcwc_drv.c b/bcwc_drv.c index 2742457..75a447f 100644 --- a/bcwc_drv.c +++ b/bcwc_drv.c @@ -43,12 +43,14 @@ static int bcwc_pci_reserve_mem(struct bcwc_private *dev_priv) ret = pci_request_region(dev_priv->pdev, BCWC_PCI_ISP_IO, "ISP IO"); if (ret) { dev_err(&dev_priv->pdev->dev, "Failed to request ISP IO\n"); + pci_release_region(dev_priv->pdev, BCWC_PCI_S2_IO); return ret; } ret = pci_request_region(dev_priv->pdev, BCWC_PCI_S2_MEM, "S2 MEM"); if (ret) { - dev_err(&dev_priv->pdev->dev, "Failed to request S2 MEM\n"); + pci_release_region(dev_priv->pdev, BCWC_PCI_ISP_IO); + pci_release_region(dev_priv->pdev, BCWC_PCI_S2_IO); return ret; }