diff options
author | Joe Lawrence <joe.lawrence@stratus.com> | 2013-08-08 16:45:39 -0400 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2013-08-26 18:53:45 +0400 |
commit | cf9bd21a41bd999ac6a0b72b549839e218ad5f31 (patch) | |
tree | a92825d8db84b4d9bc6f0b02c3855a2f6bf1f6ea /drivers/scsi/pm8001/pm8001_init.c | |
parent | 3b3e6f8df3b03642d6705d1db84842c24415b21f (diff) | |
download | blackbird-op-linux-cf9bd21a41bd999ac6a0b72b549839e218ad5f31.tar.gz blackbird-op-linux-cf9bd21a41bd999ac6a0b72b549839e218ad5f31.zip |
[SCSI] mpt3sas: fix cleanup on controller resource mapping failure
If mpt3sas_base_map_resources takes an early error path then its
counterpart, mpt3sas_base_free_resources needs to be careful about
cleaning up:
1 - _base_mask_interrupts and _base_make_ioc_ready require memory
mapped I/O registers, make sure that this is true.
2 - _base_free_irq iterates over the adapter's reply_queue_list, so
move this list head initialization out of _base_enable_msix to
_scsih_probe so this will always be safe.
3 - check that the controller PCI device and its BARs have been
enabled before disabling them.
Signed-off-by: Joe Lawrence <joe.lawrence@stratus.com>
Acked-by: Sreekanth Reddy <Sreekanth.Reddy@lsi.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/pm8001/pm8001_init.c')
0 files changed, 0 insertions, 0 deletions