When a LLD calls fc_remote_port_add for a port that is already in the state FC_PORTSTATE_ONLINE, the FC transport class will create a new fc_rport struct and sysfs will show two entries for the same port. How should this be handled? Does the LLD have to track the state and only call fc_remote_port add for new ports and ports in the state FC_PORTSTATE_BLOCKED or FC_PORTTYPE_NOTPRESENT? Or should the FC transport class allow that a LLD can call fc_remote_port_add at any time? The patch does this change in the FC transport class. Thoughts, comments? -- Christof Schmitt --- drivers/scsi/scsi_transport_fc.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) --- a/drivers/scsi/scsi_transport_fc.c 2009-06-23 14:41:20.000000000 +0200 +++ b/drivers/scsi/scsi_transport_fc.c 2009-06-23 15:22:21.000000000 +0200 @@ -2580,9 +2580,7 @@ fc_remote_port_add(struct Scsi_Host *sho spin_lock_irqsave(shost->host_lock, flags); list_for_each_entry(rport, &fc_host->rports, peers) { - - if ((rport->port_state == FC_PORTSTATE_BLOCKED) && - (rport->channel == channel)) { + if (rport->channel == channel) { switch (fc_host->tgtid_bind_type) { case FC_TGTID_BIND_BY_WWPN: -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html