sg_get_lba_status - send the SCSI GET LBA STATUS command
sg_get_lba_status [--brief] [--help] [--hex] [--lba=LBA] [--maxlen=LEN]
[--raw] [--verbose] [--version] DEVICE
Send the SCSI GET LBA STATUS command to the DEVICE and outputs the
response. This command was introduced in (draft) SBC-3 revision 20 and
devices that support thin provisioning should support this command.
The default action is to decode the response into one LBA status
descriptor per line output to stdout. The descriptor LBA is output in
hex (prefixed by ’0x’) and the number of blocks is output in decimal
followed by the provisioning status in decimal. The provisioning status
can be in the range 0 to 15 of which only 0 (mapped), 1 (unmapped) and
2 (anchored) are used currently. The amount of output can be reduced by
the --brief option.
Arguments to long options are mandatory for short options as well.
when use once then one LBA status descriptor per line is output
to stdout. Each line has this format: "0x<descriptor_LBA>
0x<blocks> <provisioning_status>". So the descriptor LBA and
blocks are output in hex and the provisioning status in decimal.
When used twice (e.g. ’-bb’ or ’--brief --brief’) the the
provisioning status of the given LBA (or LBA 0 if the --lba
option is not given) is output to stdout. A check is made that
the given LBA lies on the range of the first returned LBA status
descriptor (as it should according to SBC-3 revision 20) and
warnings are sent to stderr if it doesn’t.
output the usage message then exit.
output response to this command in ASCII hex.
where LBA is the starting Logical Block Address (LBA) to check
the provisioning status for. Note that the DEVICE chooses how
many following blocks that it will return provisioning status
where LEN is the (maximum) response length in bytes. It is
placed in the cdb’s "allocation length" field. If not given then
24 is used. 24 is enough space for the response header and one
LBA status descriptor. LEN should be 8 plus a multiple of 16
(e.g. 24, 40, and 56 are suitable).
output response in binary (to stdout).
increase the level of verbosity, (i.e. debug output). Additional
output caused by this option is sent to stderr.
print the version string and then exit.
For a discussion of thin provisioning see section 4.6.3 of sbcr22.pdf
at http://www.t10.org (or the corresponding section of a later draft).
The exit status of sg_get_lba_status is 0 when it is successful.
Otherwise see the sg3_utils(8) man page.
Written by Douglas Gilbert.
Report bugs to <dgilbert at interlog dot com>.
Copyright © 2009-2010 Douglas Gilbert
This software is distributed under a FreeBSD license. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR