On Tue, 20 Nov 2007, Douglas Gilbert wrote:
> There should have always been at least two types of "block":
> a) block media access commands
> b) block all commands because the transport has told us
> (or we know that we are about to remove some component)
> that commands cannot be delivered to the device (logical
> unit)
That sounds reasonable. I'm talking about some other kinds of "block":
c) Temporarily block all commands other than START-STOP UNIT or
TEST UNIT READY because the device has been idle for N seconds
and we want to prepare it prior to powering-down the
transport.
d) Temporarily block all commands because we have told the
transport that it can power down; after we ask the transport
to resume normal operation the commands will be delivered.
e) Fail all commands immediately because the user has told us
that no I/O to the device should be permitted and the device
must remain "idle".
> For case a) all SCSI commands apart from those that explicitly
> access the media (e.g. READ, WRITE, VERIFY) should be sent to
> the device. Some commands, such as MODE SENSE, may fail since
> they might depend on data held on the media. Such failures
> will be fast with appropriate sense_key/asc/ascq codes returned.
>
>
> IMO if a transport tells us that a SCSI device (i.e. target
> device and/or logical unit) is accessible and the SCSI subsystem
> stops us sending an INQUIRY to that device then the SCSI
> subsystem is broken.
What if the SCSI subsystem prevents you from sending an INQUIRY (or any
other command) because the user/administrator has told it to do so?
Alan Stern
-
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