Opened 6 years ago

Closed 5 years ago

Last modified 4 years ago

#296 closed enhancement (fixed)

Support SAT ATA PASS-THROUGH fixed format sense data

Reported by: Christian Franke Owned by: Doug Gilbert
Priority: major Milestone: Release 6.4
Component: all Version: 6.2
Keywords: scsi Cc:

Description

ATA commands like SMART RETURN STATUS (smartctl -H) and SCT ERC GET (smartctl -l scterc) return results in ATA output registers. The SAT ATA PASS-THROUGH commands forward these via sense data.

SAT-1 and older SAT-2 revisions define that the ATA PASS-THROUGH commands always return descriptor format sense data (with ATA Return descriptor) and never return fixed format sense data.

This violates the SPC-4 requirement that the sense data format is controlled by the D_SENSE bit in the Control mode page. Older SCSI layers expecting fixed format may truncate the ATA Return descriptor.

Newer versions of SAT define a fixed (D_SENSE=0) sense data format for the ATA PASS-THROUGH commands. It returns the lower (28-bit command) parts of the ATA output registers and "nonzero" flags for the upper output registers. The SATL may provide the optional ATA PASS-THROUGH Results log page to read the full result.

See T10/08-344r2.

scsiata.cpp should be enhanced to detect the new fixed format sense data.

Change History (5)

comment:1 Changed 6 years ago by Christian Franke

Owner: changed from somebody to Christian Franke
Status: newaccepted

comment:2 Changed 5 years ago by Christian Franke

Milestone: Release 6.3Release 6.4

comment:3 Changed 5 years ago by Alex Samorukov

Owner: changed from Christian Franke to Doug Gilbert
Status: acceptedassigned

comment:4 Changed 5 years ago by Alex Samorukov

Resolution: fixed
Status: assignedclosed

Implemented by dpgilbert in r4041.

comment:5 Changed 4 years ago by Christian Franke

Related:
FreeBSD Bug 191717
Ticket #612

Note: See TracTickets for help on using tickets.