Project

General

Profile

Bug #2108

sd INQUIRY parsing and SCSI version handling needs work

Added by Albert Lee over 8 years ago.

Status:
New
Priority:
Normal
Assignee:
Category:
driver - device drivers
Start date:
2012-02-10
Due date:
% Done:

40%

Estimated time:
Difficulty:
Medium
Tags:
needs-triage
Gerrit CR:

Description

inquiry.h: The RDF_ macros actually refer to the SCSI version (SPC version) as found in inq_ansi. The descriptions are totally wrong for response data formats. Values greater than 0x2 for RDF are reserved.
Renamed as ANSI_ macros.

The struct scsi_inquiry field inq_dtype is the wrong size (8 bits vs 5 bits) and inq_qual is the wrong size (should be the higher 3 bits of the first byte) and location (located where the obsolete "device-type modifier" field was in SCSI-2), inq_dtype just happens to work for the device type when used as an 8-bit value because the device qualifier we care about is always 0.

Using http://ldkelley.com/SCSI2/SCSI2-08.html as a reference for SCSI-2 spec.

We also forgot to handle SPC-4 devices when deciding to check for command queuing capabilities.


Related issues

Related to illumos gate - Bug #2087: sd needs to detect and handle SBC-3 correctlyFeedback2012-02-08

Actions
Related to illumos gate - Bug #1655: ata erroneously treats inq_qual as DPQNew2011-10-15

Actions

Also available in: Atom PDF