diff options
author | Jayamohan Kallickal <jayamohank@gmail.com> | 2013-09-29 02:35:51 +0400 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2013-10-25 12:58:08 +0400 |
commit | bd41c2bd86000514cf199891dabff86599796c0c (patch) | |
tree | 17ec8294c2f84751b944af51dcea392987f86877 /drivers/scsi/be2iscsi/be_main.c | |
parent | 1e4be6ff41573139620080268a1aa6d1d8726358 (diff) | |
download | linux-bd41c2bd86000514cf199891dabff86599796c0c.tar.xz |
[SCSI] be2iscsi: Fix chute cleanup during drivers unload.
Signed-off-by: John Soni Jose <sony.john-n@emulex.com>
Signed-off-by: Jayamohan Kallickal <jayamohan.kallickal@emulex.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/be2iscsi/be_main.c')
-rw-r--r-- | drivers/scsi/be2iscsi/be_main.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/drivers/scsi/be2iscsi/be_main.c b/drivers/scsi/be2iscsi/be_main.c index d539b17e4a80..b323569e5eb3 100644 --- a/drivers/scsi/be2iscsi/be_main.c +++ b/drivers/scsi/be2iscsi/be_main.c @@ -4433,10 +4433,16 @@ static void beiscsi_clean_port(struct beiscsi_hba *phba) int mgmt_status, ulp_num; struct ulp_cid_info *ptr_cid_info = NULL; - mgmt_status = mgmt_epfw_cleanup(phba, CMD_CONNECTION_CHUTE_0); - if (mgmt_status) - beiscsi_log(phba, KERN_WARNING, BEISCSI_LOG_INIT, - "BM_%d : mgmt_epfw_cleanup FAILED\n"); + for (ulp_num = 0; ulp_num < BEISCSI_ULP_COUNT; ulp_num++) { + if (test_bit(ulp_num, (void *)&phba->fw_config.ulp_supported)) { + mgmt_status = mgmt_epfw_cleanup(phba, ulp_num); + if (mgmt_status) + beiscsi_log(phba, KERN_WARNING, + BEISCSI_LOG_INIT, + "BM_%d : mgmt_epfw_cleanup FAILED" + " for ULP_%d\n", ulp_num); + } + } hwi_purge_eq(phba); hwi_cleanup(phba); |