aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_init.c
diff options
context:
space:
mode:
authorJoe Carnuccio <joe.carnuccio@qlogic.com>2013-02-08 01:57:57 -0500
committerJames Bottomley <JBottomley@Parallels.com>2013-02-22 09:04:01 -0500
commit827210ba2a368058c72cf93e66d7d8aeb55922eb (patch)
tree367da9f251c88e3330129564db63acf56fbd61d7 /drivers/scsi/qla2xxx/qla_init.c
parente452ceb636c416a517ec1b5d964491fd0bda503e (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.c14
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