Poster of Linux kernelThe best gift for a Linux geek
SG_GET_LBA_STATUS

SG_GET_LBA_STATUS

Section: SG3_UTILS (8) Updated: October 2010
Local index Up
 

NAME

sg_get_lba_status - send the SCSI GET LBA STATUS command  

SYNOPSIS

sg_get_lba_status [--brief] [--help] [--hex] [--lba=LBA] [--maxlen=LEN] [--raw] [--verbose] [--version] DEVICE  

DESCRIPTION

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 logical block 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.  

OPTIONS

Arguments to long options are mandatory for short options as well.
-b, --brief
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.
-h, --help
output the usage message then exit.
-H, --hex
output response to this command in ASCII hex.
-l, --lba=LBA
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 for.
-m, --maxlen=LEN
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).
-r, --raw
output response in binary (to stdout).
-v, --verbose
increase the level of verbosity, (i.e. debug output). Additional output caused by this option is sent to stderr.
-V, --version
print the version string and then exit.
 

NOTES

For a discussion of logical block provisioning see section 4.7 of sbcr27.pdf at http://www.t10.org (or the corresponding section of a later draft).  

EXIT STATUS

The exit status of sg_get_lba_status is 0 when it is successful. Otherwise see the sg3_utils(8) man page.  

AUTHORS

Written by Douglas Gilbert.  

REPORTING BUGS

Report bugs to <dgilbert at interlog dot com>.  

COPYRIGHT

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 PURPOSE.  

SEE ALSO

sg_write_same(8), sg_unmap(8)


 

Index

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
NOTES
EXIT STATUS
AUTHORS
REPORTING BUGS
COPYRIGHT
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 22:02:21 GMT, April 16, 2011