When ioremap_nocache fails, the lack of error-handling code may
cause unexpected results.

This patch adds error-handling code after calling ioremap_nocache.

Signed-off-by: Zhouyang Jia <[email protected]>
---
 drivers/ipack/carriers/tpci200.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/ipack/carriers/tpci200.c b/drivers/ipack/carriers/tpci200.c
index 9b23843..1612f51 100644
--- a/drivers/ipack/carriers/tpci200.c
+++ b/drivers/ipack/carriers/tpci200.c
@@ -304,6 +304,13 @@ static int tpci200_register(struct tpci200_board *tpci200)
                ioremap_nocache(pci_resource_start(tpci200->info->pdev,
                                           TPCI200_IP_INTERFACE_BAR),
                        TPCI200_IFACE_SIZE);
+       if (!tpci200->info->interface_regs) {
+               dev_err(&tpci200->info->pdev->dev,
+                       "(bn 0x%X, sn 0x%X) failed to map driver user space!",
+                       tpci200->info->pdev->bus->number,
+                       tpci200->info->pdev->devfn);
+               goto out_release_mem8_space;
+       }
 
        /* Initialize lock that protects interface_regs */
        spin_lock_init(&tpci200->regs_lock);
-- 
2.7.4


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Industrypack-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/industrypack-devel

Reply via email to