summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorArun Easi <arun.easi@qlogic.com>2012-08-22 14:21:10 -0400
committerJames Bottomley <JBottomley@Parallels.com>2012-09-24 12:10:49 +0400
commit370d550ea4eda6889ae2fb8a5e9845d2276f1567 (patch)
treee38add51d77d39411b877e4ab8e81973df4e0601 /drivers
parent79cc785fc7dc16c4f7d7b475cd64695789c48eda (diff)
[SCSI] qla2xxx: Fix for continuous rescan attempts in arbitrated loop topology.
Stale information in the temporary fcport created in qla2x00_configure_local_loop() causes qla2x00_get_port_database() call to fail. This reschedules scan, which gets stuck continuously in the rescheduling-of-scan loop due to the failure. Signed-off-by: Arun Easi <arun.easi@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/scsi/qla2xxx/qla_init.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c
index 6619b56c06f..414f810726f 100644
--- a/drivers/scsi/qla2xxx/qla_init.c
+++ b/drivers/scsi/qla2xxx/qla_init.c
@@ -2826,6 +2826,8 @@ qla2x00_configure_local_loop(scsi_qla_host_t *vha)
if (loop_id > LAST_LOCAL_LOOP_ID)
continue;
+ memset(new_fcport, 0, sizeof(fc_port_t));
+
/* Fill in member data. */
new_fcport->d_id.b.domain = domain;
new_fcport->d_id.b.area = area;