diff options
author | Joe Carnuccio <joe.carnuccio@qlogic.com> | 2013-02-08 01:57:57 -0500 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2013-02-22 09:04:01 -0500 |
commit | 827210ba2a368058c72cf93e66d7d8aeb55922eb (patch) | |
tree | 367da9f251c88e3330129564db63acf56fbd61d7 /drivers/scsi/qla2xxx/qla_init.c | |
parent | e452ceb636c416a517ec1b5d964491fd0bda503e (diff) |
[SCSI] Revert "[SCSI] qla2xxx: Optimize existing port name server query matching."
This reverts commit c0822b63ccbf3b019059f384c290b080cae859f1.
Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com>
Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_init.c')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_init.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c index 51f007f27fd8..edb4f8e993fc 100644 --- a/drivers/scsi/qla2xxx/qla_init.c +++ b/drivers/scsi/qla2xxx/qla_init.c | |||
@@ -2746,7 +2746,6 @@ qla2x00_alloc_fcport(scsi_qla_host_t *vha, gfp_t flags) | |||
2746 | fcport->loop_id = FC_NO_LOOP_ID; | 2746 | fcport->loop_id = FC_NO_LOOP_ID; |
2747 | qla2x00_set_fcport_state(fcport, FCS_UNCONFIGURED); | 2747 | qla2x00_set_fcport_state(fcport, FCS_UNCONFIGURED); |
2748 | fcport->supported_classes = FC_COS_UNSPECIFIED; | 2748 | fcport->supported_classes = FC_COS_UNSPECIFIED; |
2749 | fcport->scan_state = QLA_FCPORT_SCAN_NONE; | ||
2750 | 2749 | ||
2751 | return fcport; | 2750 | return fcport; |
2752 | } | 2751 | } |
@@ -3229,6 +3228,13 @@ qla2x00_configure_fabric(scsi_qla_host_t *vha) | |||
3229 | } | 3228 | } |
3230 | } | 3229 | } |
3231 | 3230 | ||
3231 | #define QLA_FCPORT_SCAN 1 | ||
3232 | #define QLA_FCPORT_FOUND 2 | ||
3233 | |||
3234 | list_for_each_entry(fcport, &vha->vp_fcports, list) { | ||
3235 | fcport->scan_state = QLA_FCPORT_SCAN; | ||
3236 | } | ||
3237 | |||
3232 | rval = qla2x00_find_all_fabric_devs(vha, &new_fcports); | 3238 | rval = qla2x00_find_all_fabric_devs(vha, &new_fcports); |
3233 | if (rval != QLA_SUCCESS) | 3239 | if (rval != QLA_SUCCESS) |
3234 | break; | 3240 | break; |
@@ -3244,7 +3250,7 @@ qla2x00_configure_fabric(scsi_qla_host_t *vha) | |||
3244 | if ((fcport->flags & FCF_FABRIC_DEVICE) == 0) | 3250 | if ((fcport->flags & FCF_FABRIC_DEVICE) == 0) |
3245 | continue; | 3251 | continue; |
3246 | 3252 | ||
3247 | if (fcport->scan_state != QLA_FCPORT_SCAN_FOUND && | 3253 | if (fcport->scan_state == QLA_FCPORT_SCAN && |
3248 | atomic_read(&fcport->state) == FCS_ONLINE) { | 3254 | atomic_read(&fcport->state) == FCS_ONLINE) { |
3249 | qla2x00_mark_device_lost(vha, fcport, | 3255 | qla2x00_mark_device_lost(vha, fcport, |
3250 | ql2xplogiabsentdevice, 0); | 3256 | ql2xplogiabsentdevice, 0); |
@@ -3259,9 +3265,7 @@ qla2x00_configure_fabric(scsi_qla_host_t *vha) | |||
3259 | fcport->d_id.b.al_pa); | 3265 | fcport->d_id.b.al_pa); |
3260 | fcport->loop_id = FC_NO_LOOP_ID; | 3266 | fcport->loop_id = FC_NO_LOOP_ID; |
3261 | } | 3267 | } |
3262 | continue; | ||
3263 | } | 3268 | } |
3264 | fcport->scan_state = QLA_FCPORT_SCAN_NONE; | ||
3265 | } | 3269 | } |
3266 | 3270 | ||
3267 | /* Starting free loop ID. */ | 3271 | /* Starting free loop ID. */ |
@@ -3516,7 +3520,7 @@ qla2x00_find_all_fabric_devs(scsi_qla_host_t *vha, | |||
3516 | WWN_SIZE)) | 3520 | WWN_SIZE)) |
3517 | continue; | 3521 | continue; |
3518 | 3522 | ||
3519 | fcport->scan_state = QLA_FCPORT_SCAN_FOUND; | 3523 | fcport->scan_state = QLA_FCPORT_FOUND; |
3520 | 3524 | ||
3521 | found++; | 3525 | found++; |
3522 | 3526 | ||