[PATCH v2] isdn: hfcpci: fix potential NULL pointer dereference

From: Kangjie Lu
Date: Mon Mar 11 2019 - 01:34:59 EST


In case ioremap fails, the fix releases resources and returns.

Signed-off-by: Kangjie Lu <kjlu@xxxxxxx>
---
drivers/isdn/hardware/mISDN/hfcpci.c | 6 ++++++
1 file changed, 6 insertions(+)

diff --git a/drivers/isdn/hardware/mISDN/hfcpci.c b/drivers/isdn/hardware/mISDN/hfcpci.c
index ebb3fa2e1d00..d1d53c5de3c0 100644
--- a/drivers/isdn/hardware/mISDN/hfcpci.c
+++ b/drivers/isdn/hardware/mISDN/hfcpci.c
@@ -2036,6 +2036,12 @@ setup_hw(struct hfc_pci *hc)
"HFC-PCI: defined at mem %#lx fifo %#lx(%#lx) IRQ %d HZ %d\n",
(u_long) hc->hw.pci_io, (u_long) hc->hw.fifos,
(u_long) hc->hw.dmahandle, hc->irq, HZ);
+ if (unlikely(!hc->hw.pci_io)) {
+ pci_free_consistent(hc->pdev, 0x8000, hc->hw.fifos,
+ hc->hw.dmahandle);
+ return 1;
+ }
+
/* enable memory mapped ports, disable busmaster */
pci_write_config_word(hc->pdev, PCI_COMMAND, PCI_ENA_MEMIO);
hc->hw.int_m2 = 0;
--
2.17.1