Seokmann Ju [EMAIL PROTECTED] wrote:
> On Wednesday, February 21, 2007 6:54 PM, Malahal Naineni wrote:
> > I have JBOD in FL-port and if I unplug the cable or disable
> > the switch port, the qla2xxx driver doesn't fail the I/O
> > soon. The remote port status is 'online' all the time. The
> > I/O's usually timeout after the usual scsi timeout.
> Yes, that is because qla2xxx doesn't want to trigger unnecessary error
> handling mechanism, which is expensive.
> As long as State Change recovered within SCSI timeout period, driver
> won't let mid-layer know about it.
I removed the cable and didn't put it back at all for more than 1 hour.
There is no recovery here. When I disable an F-port, after few seconds
the remote port state is set to something other than 'online'. Why not
same behaviour for remote ports on FL-port. With my patch, the behaviour
is same whether the remote port is attached to an FL-port or an F-port.
> > Based on
> > the existing structure, al_pa is at the lowest addressed
> > byte, so the b24 field's interpretation as an integer is
> > *incorrect* on big endinan systems. You should be able to print the
> > b24 as an integer and see what you get is incorrect on big
> > endian systems.
> I agree on your assessment. However, the patch won't fix the problem as
> the problem itself is regardless byte ordering.
> A patch which includes your evaluation will be submitted.
> Thank you for findings.
Well, my patch fixed the problem! qla2x00_device_resync() fails to call
qla2x00_mark_device_lost() for RSCN's affecting area or domain because
the following evaluates to true always due to b24 field being incorrect:
(fcport->d_id.b24 & mask) != d_id.b24
Thanks, Malahal.
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html