xref: /aosp_15_r20/external/sg3_utils/examples/sg_unmap_example.txt (revision 44704f698541f6367e81f991ef8bb54ccbf3fc18)
1*44704f69SBart Van Assche#                sg_unmap_example.txt
2*44704f69SBart Van Assche# This is an example of the contents of a file that can be given to sg_unmap
3*44704f69SBart Van Assche# For example, assume the /dev/sdc is a scratch disk (e.g. one made by the
4*44704f69SBart Van Assche# scsi_debug kernel module) then:
5*44704f69SBart Van Assche#    sg_unmap --in=sg_unmap_example.txt /dev/sdc
6*44704f69SBart Van Assche
7*44704f69SBart Van Assche0x12345677,1	# unmap LBA 0x12345677
8*44704f69SBart Van Assche0x12345678 2	# unmap LBA 0x12345678 and 0x12345679
9*44704f69SBart Van Assche0x12340000 3333	# unmap 3333 blocks starting at LBA 0x12340000
10*44704f69SBart Van Assche
11*44704f69SBart Van Assche0X5a5a5a5a5a	0  # unmaps 0 blocks (i.e. does nothing)
12*44704f69SBart Van Assche
13*44704f69SBart Van Assche    a5a5a5h
14*44704f69SBart Van Assche7		# unmap 7 blocks starting at LBA 0xa5a5a5
15*44704f69SBart Van Assche
16*44704f69SBart Van Assche# Note that there can be leading and trailing whitespace and whitespace
17*44704f69SBart Van Assche# (plus comma) can be a separator.
18*44704f69SBart Van Assche#
19*44704f69SBart Van Assche# Example invocation:
20*44704f69SBart Van Assche# $ sg_unmap --in=../examples/sg_unmap_example.txt -vv /dev/sdc
21*44704f69SBart Van Assche# open /dev/sg2 with flags=0x802
22*44704f69SBart Van Assche#     unmap cdb: 42 00 00 00 00 00 00 00 58 00
23*44704f69SBart Van Assche#     unmap parameter list:
24*44704f69SBart Van Assche#         00 56 00 50 00 00 00 00  00 00 00 00 12 34 56 77
25*44704f69SBart Van Assche#         00 00 00 01 00 00 00 00  00 00 00 00 12 34 56 78
26*44704f69SBart Van Assche#         00 00 00 02 00 00 00 00  00 00 00 00 12 34 00 00
27*44704f69SBart Van Assche#         00 00 0d 05 00 00 00 00  00 00 00 5a 5a 5a 5a 5a
28*44704f69SBart Van Assche#         00 00 00 00 00 00 00 00  00 00 00 00 00 a5 a5 a5
29*44704f69SBart Van Assche#         00 00 00 07 00 00 00 00
30*44704f69SBart Van Assche# sg_cmds_process_resp: slen=18
31*44704f69SBart Van Assche# unmap:  Fixed format, current;  Sense key: Illegal Request
32*44704f69SBart Van Assche#  Additional sense: Invalid command operation code
33*44704f69SBart Van Assche#  Raw sense data (in hex):
34*44704f69SBart Van Assche#         70 00 05 00 00 00 00 0a  00 00 00 00 20 00 00 00
35*44704f69SBart Van Assche#         00 00
36*44704f69SBart Van Assche# UNMAP not supported
37*44704f69SBart Van Assche#
38*44704f69SBart Van Assche# --------------------------------------------------------
39*44704f69SBart Van Assche# Notice the 8 byte header then 5 descriptors in the parameter
40*44704f69SBart Van Assche# list
41