2006-03-01 21:15:59

by Maxim Kozover

[permalink] [raw]
Subject: Re[4]: Fwd: Re: problems with scsi_transport_fc and qla2xxx

Hi Andrew!
You're right. I didn't look at roles in Emulex case.
When using Emulex everything is OK.
Tomorrow I'll connect QLogic again to continue problem investigation.
Thanks much for quick and professional replies.

I'll just describe Emulex situation to confirm.
Let's connect only 1 Emulex port (adapter 7) to a switch and leave
adapter 6 not connected. Then we have
# ls /sys/class/fc_remote_ports/
rport-7:0-0 rport-7:0-1 rport-7:0-2
# cat /sys/class/fc_remote_ports/*/roles
Fabric Port
Directory Server
FCP Target, FCP Initiator

When the cable is disconnected from adapter 7, immediately with
LinkDown event, the rport with the role of Directory server disappears
and only 2 are left:
# ls /sys/class/fc_remote_ports/
rport-7:0-0 rport-7:0-2
# cat /sys/class/fc_remote_ports/*/roles
Fabric Port
FCP Target, FCP Initiator

Then after a timeout, the role of rport-7:0-2 is changed to unknown
and relevant entries are removed from /proc/scsi/scsi. rport-7:0-0 is
still here.

rport-7:0-2: blocked FC remote port time out: removing target and saving binding
# ls /sys/class/fc_remote_ports/
rport-7:0-0 rport-7:0-2
# cat /sys/class/fc_remote_ports/*/roles
Fabric Port
unknown

After reconnecting the cable, rport-7:0:0 disappears and rport-7:0:4
and rport-7:0-5 appear along with newly recognized LUNs in /proc/scsi/scsi.
# ls /sys/class/fc_remote_ports/
rport-7:0-2 rport-7:0-4 rport-7:0-5
# cat /sys/class/fc_remote_ports/*/roles
FCP Target, FCP Initiator
Fabric Port
Directory Server

If I'm not mistaken, in QLogic case only 1 rport per adapter appeared
instead of 3. Tomorrow I'll connect QLogic and report again.

Thanks,

Maxim.