forked from Minki/linux
scsi: qla2xxx: fix rports not being mark as lost in sync fabric scan
In qla2x00_find_all_fabric_devs(), fcport->flags & FCF_LOGIN_NEEDED is a
necessary condition for logging into new rports, but not for dropping lost
ones.
Fixes: 726b854870
("qla2xxx: Add framework for async fabric discovery")
Link: https://lore.kernel.org/r/20191122221912.20100-2-martin.wilck@suse.com
Tested-by: David Bond <dbond@suse.com>
Signed-off-by: Martin Wilck <mwilck@suse.com>
Acked-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
69b41f141d
commit
d341e9a8f2
@ -5898,8 +5898,7 @@ qla2x00_find_all_fabric_devs(scsi_qla_host_t *vha)
|
||||
if (test_bit(LOOP_RESYNC_NEEDED, &vha->dpc_flags))
|
||||
break;
|
||||
|
||||
if ((fcport->flags & FCF_FABRIC_DEVICE) == 0 ||
|
||||
(fcport->flags & FCF_LOGIN_NEEDED) == 0)
|
||||
if ((fcport->flags & FCF_FABRIC_DEVICE) == 0)
|
||||
continue;
|
||||
|
||||
if (fcport->scan_state == QLA_FCPORT_SCAN) {
|
||||
@ -5922,7 +5921,8 @@ qla2x00_find_all_fabric_devs(scsi_qla_host_t *vha)
|
||||
}
|
||||
}
|
||||
|
||||
if (fcport->scan_state == QLA_FCPORT_FOUND)
|
||||
if (fcport->scan_state == QLA_FCPORT_FOUND &&
|
||||
(fcport->flags & FCF_LOGIN_NEEDED) != 0)
|
||||
qla24xx_fcport_handle_login(vha, fcport);
|
||||
}
|
||||
return (rval);
|
||||
|
Loading…
Reference in New Issue
Block a user