Re: Scsi error handler strategy question

Kurt Garloff
2004-01-05T09:44:28Z

[-- Attachment #1: Type: text/plain, Size: 2279 bytes --]

Hi Willem,

On Sun, Jan 04, 2004 at 06:24:25PM -0500, Willem Riede wrote:
> But here is my first question: is there typically any need to wait
> some time between doing the host/bus/device reset and the first TUR?
> Is there a standard that governs how fast devices have to be done
> resetting to the point that they can respond to commands (if only to
> say they're not ready?

Ths SCSI-2 standard does not say anything about this.
However, it seems to be assumed that a device has recovered enough
to respond to commands like INQUIRY and TUR after the normal
parallel SCSI selection timeout of 250ms.

In practice, we many devices need more time to recover.
If you look at the SCSI scanning code, there are timeouts of a few
(6) seconds. They are only needed because of devices needing time to
recover after a reset.

> When the first TUR completes, the CC/UA expected flag takes care of
> the reported sense 06:29:00 (power on reset or device reset occurred).
> So far so good. Second TUR issued. That one typically gets 02:04:01
> (not ready - in the process of becoming ready) reported. The error
> handler is programmed to retry TUR once if it sees this.

Good.

> Second question: if the device firmware takes some time to re-initiate
> the device, this code can be returned multiple times. So am I allowed
> to submit a patch to increase that retry count? What would be a good
> number? Hard to say in general, as this depends on what devices you
> have and how fast commands get executed :-(

TUR tends to be answered immediately. So you should wait a second
before retrying. Allowing for 32 retries does not seem exxagerated then,
as we know that the device is expected to come back.

> Finally, at least my device, the OnStream DI-30, will eventually want
> to report 06:28:00 (not ready to ready transition, medium may have
> changed). The error handler considers that an error, and is guaranteed
> to take the device offline, just as it came back to life :-(
>
> Am I allowed to submit a patch that will also retry on that condition?

I'd support it.

Regards,
--
Kurt Garloff <garloff@suse.de> Cologne, DE
SUSE LINUX AG, Nuernberg, DE SUSE Labs (Head)

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]