lkml.org 
[lkml]   [2018]   [Jun]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH v2] scsi: bfa: add error handling for pci_iomap
Date
When pci_iomap fails, the lack of error-handling code may
cause unexpected results.

This patch adds error-handling code after calling pci_iomap.

Signed-off-by: Zhouyang Jia <jiazhouyang09@gmail.com>
---
v1->v2:
- Unmap bfad->pci_bar0_kva.
---
drivers/scsi/bfa/bfad.c | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/drivers/scsi/bfa/bfad.c b/drivers/scsi/bfa/bfad.c
index bd7e6a6f..693e180 100644
--- a/drivers/scsi/bfa/bfad.c
+++ b/drivers/scsi/bfa/bfad.c
@@ -760,6 +760,11 @@ bfad_pci_init(struct pci_dev *pdev, struct bfad_s *bfad)
goto out_release_region;
}

+ if (bfad->pci_bar2_kva == NULL) {
+ printk(KERN_ERR "Fail to map bar2\n");
+ goto out_unmap_bar0;
+ }
+
bfad->hal_pcidev.pci_slot = PCI_SLOT(pdev->devfn);
bfad->hal_pcidev.pci_func = PCI_FUNC(pdev->devfn);
bfad->hal_pcidev.pci_bar_kva = bfad->pci_bar0_kva;
@@ -797,6 +802,8 @@ bfad_pci_init(struct pci_dev *pdev, struct bfad_s *bfad)

return 0;

+out_unmap_bar0:
+ pci_iounmap(pdev, bfad->pci_bar0_kva);
out_release_region:
pci_release_regions(pdev);
out_disable_device:
--
2.7.4
\
 
 \ /
  Last update: 2018-06-14 13:58    [W:0.441 / U:0.076 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site