Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 06 Jul 1999 18:29:10 -0600
From:      "Justin T. Gibbs" <gibbs@caspian.plutotech.com>
To:        Nick Hibma <hibma@skylink.it>
Cc:        "Justin T. Gibbs" <gibbs@plutotech.com>, scsi@FreeBSD.org
Subject:   Re: CAM: delaying new commands during reset 
Message-ID:  <199907070029.SAA01024@caspian.plutotech.com>
In-Reply-To: Your message of "Tue, 06 Jul 1999 19:48:32 %2B0200." <Pine.BSF.3.96.990706193850.296C-100000@heidi.plazza.it> 

next in thread | previous in thread | raw e-mail | index | archive | help
>Reset does not only occur after a bus reset but more often, after phase
>errors and other transient errors that might occur on the drive. So I
>need to have a proper mechanism after a reset after an error.

Sure.

>> All ccbs that have an error status set should cause the device
>> queue to be frozen and the CAM_DEV_QFRZN flag should be set in
>> the cam status field of the CCB.  If you don't freeze the queue,
>> the peripheral driver cannot perform error recovery in a consistant
>> way.
>
>umass uses one tagged opening.

This matters little.  The peripheral driver still expects that when an error
occurs the queue will be frozen (unless the devices sets the queue freeze
disable bit, but this is handled by the XPT for you).  If you don't freeze the
queue, the order in which the transaction is re-queued or the queue is frozen
for error recovery by the peripheral driver, etc. will change the outcome.

>> It also appears that this driver has a very limited error code
>> vocabulary.  Is that because the transport or device gives little
>> information about errors?
>
>Yes. I'm not even sure whether Sense can be reliably retrieved. See
>www.usb.org -> Developers home page -> class documents -> Bulk-Only mass
>storage. They return:
>
>	- Command in Command Block Wrapper (SCSI/ATA/etc.) succeeded
>	- Command failed
>	- Phase Error
>	- D'uh!

So no SCSI status?  That's pretty lame.

--
Justin



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-scsi" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199907070029.SAA01024>