Subject: Re: A flaw in the handling of removable SCSI devices?
To: None <current-users@NetBSD.ORG>
From: John F. Woods <jfw@jfwhome.funhouse.com>
List: current-users
Date: 09/22/1996 10:27:38
> > Can you find out what the ASC and ASQ are for that sense operation?
> Assuming the driver printed the correct data there, ASC and ASQ were 00h 00h,
> "no additional sense information".

Just for the record, the SCSI driver did *not* print the correct data there.

The driver prints 'extra_len' bytes from the 'extra_bytes[]' field, but
unfortunately the 'extra_len' bytes in a SCSI REQUEST SENSE block includes
the ten bytes between the extra_len field and (our) extra_bytes field; most
importantly, ASC and ASQ are in that region, hence were not printed.

I have modified the driver to print out the REQUEST SENSE block correctly,
and will send a PR on it as soon as I remove the traces of my change having
been made just before falling asleep...  (Though I seem to recall someone
else filed a similar PR...)  (Oh for pagable kernel data, then we could
justify having a text table of interpreted error codes for the ASC/ASQ pair.)

Justin Gibbs observed in email that media change should result in 28h 00h
in the additional sense code pair, though I think there may be other cases
as well (and don't doubt that there are drives which get it wrong).  But
first I want to find out what my Syquest returns when it mysteriously fails.