Messages in this thread Patch in this message | | | From | Chuhong Yuan <> | Subject | [PATCH] mtd: rawnand: denali: add missed pci_release_regions | Date | Fri, 6 Dec 2019 15:54:32 +0800 |
| |
The driver forgets to call pci_release_regions() in probe failure and remove. Add the missed calls to fix it.
Signed-off-by: Chuhong Yuan <hslester96@gmail.com> --- drivers/mtd/nand/raw/denali_pci.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/mtd/nand/raw/denali_pci.c b/drivers/mtd/nand/raw/denali_pci.c index d62aa5271753..ca170775b141 100644 --- a/drivers/mtd/nand/raw/denali_pci.c +++ b/drivers/mtd/nand/raw/denali_pci.c @@ -77,7 +77,8 @@ static int denali_pci_probe(struct pci_dev *dev, const struct pci_device_id *id) denali->reg = ioremap_nocache(csr_base, csr_len); if (!denali->reg) { dev_err(&dev->dev, "Spectra: Unable to remap memory region\n"); - return -ENOMEM; + ret = -ENOMEM; + goto out_release_regions; } denali->host = ioremap_nocache(mem_base, mem_len); @@ -121,6 +122,8 @@ static int denali_pci_probe(struct pci_dev *dev, const struct pci_device_id *id) iounmap(denali->host); out_unmap_reg: iounmap(denali->reg); +out_release_regions: + pci_release_regions(dev); return ret; } @@ -131,6 +134,7 @@ static void denali_pci_remove(struct pci_dev *dev) denali_remove(denali); iounmap(denali->reg); iounmap(denali->host); + pci_release_regions(dev); } static struct pci_driver denali_pci_driver = { -- 2.24.0
| |