File: COVERAGE

package info (click to toggle)
sg3-utils 1.44-1
  • links: PTS, VCS
  • area: main
  • in suites: buster, sid
  • size: 7,056 kB
  • sloc: ansic: 93,218; sh: 7,607; cpp: 2,947; makefile: 447
file content (161 lines) | stat: -rw-r--r-- 7,132 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
                        Command coverage
                        ================
The following table lists SCSI commands in alphabetical order on the
left and the sg3_utils (or related) utilities that implement invocations
of them on the right. The second table lists supported ATA commands. The
third table list supported NVMe commands.

SCSI command        sg3_utils utilities that use this SCSI command
------------        -------------------------------------------------
ATA COMMAND PASS-THROUGH(12)  sg_sat_identify, ++
ATA COMMAND PASS-THROUGH(16)  sg_sat_identify, sg_sat_set_features,
                    sg_sat_phy_event, sg_sat_read_gplog ++
                    [sg_sat_chk_power, sg__sat_identify,
                     sg__sat_set_features, sg_sat_smart_rd_data
                     (previous four in the examples directory)]
ATA COMMAND PASS-THROUGH(32)  sg_sat_identify, ++
BACKGROUND CONTROL  sg_bg_ctl
CLOSE ZONE          sg_zone
COMPARE AND WRITE   sg_compare_and_write
COPY OPERATION ABORT    ddptctl, ++
EXTENDED COPY(LID1)    sg_xcopy, ddpt, ++
GET CONFIGURATION   sg_get_config, ++
GET LBA STATUS      sg_get_lba_status, ++
GET STREAM STATUS   sg_stream_ctl
INQUIRY             sg_dd, sg_format, sg_inq, sginfo,
                    sg_logs, sg_map('-i'), sg_modes, sg_opcodes,
                    sg_persist, sg_scan, sg_ses, sg_vpd ++
FINISH ZONE         sg_zone
FORMAT MEDIUM       sg_format, ++ [SSC]
FORMAT UNIT         sg_format, ++ [SBC]
LOG SELECT          sg_logs('-r' or '-select'), ++
LOG SENSE           sg_logs, ++
MODE SELECT(6)      sdparm, sg_wr_mode, sginfo, sg_format,
                    sg_emc_trespass, sg_rdac, ++
MODE SELECT(10)     sdparm, sg_wr_mode, sginfo, sg_format,
                    sg_emc_trespass, sg_rdac, ++
MODE SENSE(6)       sdparm, sg_modes, sg_wr_mode, sginfo, sg_format,
                    sg_senddiag('-e'), sg_rdac, ++
MODE SENSE(10)      sdparm, sg_modes, sg_wr_mode, sginfo, sg_format,
                    sg_senddiag('-e'), sg_rdac, ++
OPEN ZONE           sg_zone
ORWRITE(16)         sg_write_x
ORWRITE(32)         sg_write_x
PERSISTENT RESERVE IN       sg_persist, ++
PERSISTENT RESERVE OUT      sg_persist, ++
POPULATE TOKEN      ddpt, ddptctl, ++
PRE-FETCH(10)	    sg_seek
PRE-FETCH(16)	    sg_seek
PREVENT ALLOW MEDIUM REMOVAL        sg_prevent, ++
READ(6)             sg_dd, sgm_dd, sgp_dd, sg_read
READ(10)            sg_dd, sgm_dd, sgp_dd, sg_read
READ(12)            sg_dd, sgm_dd, sgp_dd, sg_read
READ(16)            sg_dd, sgm_dd, sgp_dd, sg_read
READ ATTRUBUTE      sg_read_attr
READ BLOCK LIMITS   sg_read_block_limits, ++
READ BUFFER(10)     sg_rbuf, sg_test_rwbuf, sg_read_buffer, sg_safte, ++
READ BUFFER(16)     sg_read_buffer
READ CAPACITY(10)   sg_readcap, sg_dd, sgm_dd, sgp_dd, sg_format, ++
READ CAPACITY(16)   sg_readcap, sg_dd, sgm_dd, sgp_dd, sg_format, ++
READ DEFECT(10)     sginfo('-d' or '-G'), sg_reassign('-g'), smartmontools, ++
READ DEFECT(12)     sginfo('-d' or '-G'), smartmontools
READ LONG(10)       sg_read_long, sg_dd, ++
READ LONG(16)       sg_read_long, ++
READ MEDIA SERIAL NUMBER     sg_rmsn, ++
REASSIGN BLOCKS     sg_reassign, ++
RECEIVE COPY DATA(LID1)    sg_copy_results, ++
RECEIVE COPY FAILURE DETAILS(LID1)    sg_copy_results, ++
RECEIVE COPY OPERATING PARAMETERS    ddpt, sg_copy_results, sg_xcopy, ++
RECEIVE COPY STATUS(LID1)    sg_copy_results, ++
RECEIVE DIAGNOSTIC RESULTS  sg_senddiag, sg_ses, sg_ses_microcode ++
RECEIVE ROD TOKEN INFORMATION    ddpt, ddptctl ++
REPORT ALL ROD TOKENS    ddptctl ++
REPORT IDENTIFYING INFORMATION  sg_ident, ++ (2)
REPORT LUNS         sg_luns, ++
REPORT REFERRALS    sg_referrals, ++
REPORT SUPPORTED OPERATION CODES              sg_opcodes
REPORT SUPPORTED TASK MANAGEMENT FUNCTIONS    sg_opcodes
REPORT TARGET PORT GROUPS       sg_rtpg, sg_stpg ++
REPORT TIMESTAMP    sg_timestamp
REPORT ZONES        sg_rep_zones
REQUEST SENSE       sg_requests, ++
RESET WRITE POINTER sg_reset_wp
SANITIZE            sg_sanitize
SEEK(10)	    sg_seek ++
SEND DIAGNOSTIC     sg_senddiag, sg_ses, sg_ses_microcode ++
SEQUENTIALIZE ZONE  sg_zone
SET IDENTIFYING INFORMATION  sg_ident, ++ (3)
SET TARGET PORT GROUPS       sg_stpg, ++
SET TIMESTAMP       sg_timestamp
START STOP          sg_start, ++
STREAM CONTROL      sg_stream_ctl
SYNCHRONIZE CACHE(10)   sg_sync, sg_dd, sgm_dd, sgp_dd, ++
SYNCHRONIZE CACHE(16)   sg_sync++
TEST UNIT READY     sg_turs, sg_format, ++
UNMAP               sg_unmap, ++
VERIFY(10)          sg_verify, ++
VERIFY(16)          sg_verify, ++
WRITE(6)            sg_dd, sgm_dd, sgp_dd
WRITE(10)           sg_dd, sgm_dd, sgp_dd
WRITE(12)           sg_dd, sgm_dd, sgp_dd
WRITE(16)           sg_dd, sgm_dd, sgp_dd, sg_write_x
WRITE(32)           sg_write_x
WRITE AND VERIFY(10)      sg_write_verify
WRITE AND VERIFY(16)      sg_write_verify
WRITE ATOMIC(16)    ddpt, sg_write_x
WRITE ATOMIC(32)    sg_write_x
WRITE BUFFER        sg_test_rwbuf, sg_write_buffer, ++
WRITE LONG(10)      sg_write_long, ++
WRITE LONG(16)      sg_write_long, ++
WRITE SAME(10)      sg_write_same
WRITE SAME(16)      sg_write_same, sg_write_x
WRITE SAME(32)      sg_write_same, sg_write_x
WRITE SCATTERED(16)    sg_write_x
WRITE SCATTERED(32)    sg_write_x
WRITE STREAM(16)    sg_write_x
WRITE STREAM(32)    sg_write_x
WRITE USING TOKEN   ddpt, ddptctl, ++
<most commands>     sg_raw


ATA command         sg3_utils utilities that use this (S)ATA command
-----------         ------------------------------------------------
CHECK POWER MODE    examples/sg_sat_chk_power
IDENTIFY DEVICE     sg_inq, sg_scan, sg_sat_identify,
                    examples/sg__sat_identify
IDENTIFY PACKET DEVICE     sg_inq, sg_sat_identify,
                    examples/sg__sat_identify
READ LOG EXT        sg_sat_phy_event, examples/sg__sat_phy_event
                    sg_sat_read_gplog
READ LOG DMA EXT    sg_sat_read_gplog
SET FEATURES        sg_sat_set_features
                    examples/sg__sat_set_features
SMART READ DATA     examples/sg_sat_smart_rd_data


NVMe command        sg3_utils utilities that use this NVMe command
------------        ------------------------------------------------
IDENTIFY            sg_inq
SES READ            sg_senddiag, sg_ses (NVME-MI command)
SES WRITE           sg_senddiag, sg_ses (NVME-MI command)
Device self-test    [SNTL of SEND DIAGNOSTIC] sg_senddiag  
Get features(power management) [SNTL of REQUEST SENSE] sg_requests


++  command wrapper found in sg_cmds_basic.c, sg_cmds_mmc.c  or
    sg_cmds_extra.c for this command
(2) this command was known as REPORT DEVICE IDENTIFIER prior to spc4r07
(3) this command was known as SET DEVICE IDENTIFIER prior to spc4r07

Note that any SCSI command, including bi-directional and variable length
commands (whose cdb size is > 16 bytes) can be issued by the sg_raw utility.

The RECEIVE COPY * commands in SPC-4 were grouped as one command name
with 4 service actions in SPC-3 and earlier. The single SPC-3 command
name is RECEIVE COPY RESULTS. The two opcodes associated with all
EXTENDED COPY commands are now known as THIRD PARTY COPY IN (0x84) and
THIRD PARTY COPY IN (0x83).


Douglas Gilbert
6th May 2018