From: Arun Easi Date: Tue, 19 Jun 2012 23:56:27 +0000 (-0700) Subject: qla2xxx: Fix for continuous rescan attempts in arbitrated loop topology. X-Git-Tag: v2.6.39-400.9.0~447 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=3edc63b88495317ed92625c19d16fbd4c08dd5c1;p=users%2Fjedix%2Flinux-maple.git 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. JIRA Key: V2632FC-221 --- diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c index bc78b2f2eb69..23314b7c8a7c 100644 --- a/drivers/scsi/qla2xxx/qla_init.c +++ b/drivers/scsi/qla2xxx/qla_init.c @@ -2802,6 +2802,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;