Handling excess data for READ DEFECT LIST(10)/MODE SENSE(6)

Elliott, Robert (Hou) Robert.Elliott at COMPAQ.com
Tue Jul 6 07:13:42 PDT 1999

* From the T10 Reflector (t10 at symbios.com), posted by:
* "Elliott, Robert (Hou)" <Robert.Elliott at COMPAQ.com>
How does the application client know whether to use READ DEFECT LIST (10)
or READ DEFECT LIST (12) for an SBC device?

If a drive has more than 65536 bytes of defect data, it just returns
the first part in response to a READ DEFECT LIST (10).  There doesn't
seem to be any indication that a READ DEFECT LIST (12) is needed to get
the rest.

MODE SENSE (6) and MODE SENSE (10) face a similar problem.  It is solved
for them by requiring the target to CHECK CONDITION a MODE SENSE (6) if
it has more than 256 bytes of data.  The application client then knows to
use MODE SENSE(10).  Excerpt from SPC-2:
	"A page code of 3Fh indicates that all mode pages implemented by
	the target shall be returned to the application client. If the mode
	parameter list exceeds 256 bytes for a MODE SENSE(6) command or
	65 536 bytes for a MODE SENSE(10) command, the device server shall
	return CHECK CONDITION status and the sense key shall be set to
	ILLEGAL REQUEST and the additional sense code set

Should a rule like this be added for READ DEFECT LIST?

Both SBC and SSC mark MODE SENSE (6) mandatory and MODE SENSE (10)
optional.  Should there be a statement in those standards that
MODE SENSE (10) is mandatory for devices with more than 256 bytes of
mode page data?  Should the same be done for the READ DEFECT LIST

Are there any other commands with similar problems?
PC: Robert.Elliott at compaq.com
UNIX: relliott at hobbit.eng.hou.compaq.com

* For T10 Reflector information, send a message with
* 'info t10' (no quotes) in the message body to majordomo at symbios.com

More information about the T10 mailing list