Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

sg_sync(8) [debian man page]

SG_SYNC(8)							     SG3_UTILS								SG_SYNC(8)

NAME
sg_sync - send the scsi command synchronize cache SYNOPSIS
sg_sync [--count=COUNT] [--group=GROUP] [--help] [--immed] [--lba=LBA] [--sync-nv] [--verbose] [--version] DEVICE DESCRIPTION
Send SYNCHRONIZE CACHE (10) command to DEVICE. This command is defined for SCSI block devices (see SBC-2). If successful this command makes sure that any blocks whose latest versions are held in (volatile) cache are written to (also termed as "synchronized with") the medium. If the --sync-nv option is given and the device has a non-volatile cache then any blocks whose latest versions are held in volatile cache are written to non-volatile cache. If the LBA and COUNT arguments are both zero (their defaults) then all blocks in the cache are synchronized. If LBA is greater than zero while COUNT is zero then blocks in the cache whose addresses are from and including LBA to the highest lba on the device are synchronized. If both LBA and COUNT are non zero then blocks in the cache whose addresses lie in the range LBA to LBA+COUNT-1 inclusive are synchronized with the medium. OPTIONS
Arguments to long options are mandatory for short options as well. -c, --count=COUNT where COUNT is the number of blocks to synchronize from and including LBA. Default value is 0. When 0 then all blocks in the (volatile) cache from and including LBA argument to the highest block address are synchronized. -g, --group=GROUP where GROUP is the group number which can be between 0 and 31 inclusive. The default value is 0 . Group numbers are used to segre- gate data collected within the device. This is a new feature in SBC-2 and can probably be ignored for the time being. -h, --help output the usage message then exit. -i, --immed sets the IMMED bit in the SYNCHRONIZE CACHE command. This instructs the device, if the format of the command is acceptable, to return a GOOD status immediately rather than wait for the blocks in the (volatile) cache to be synchronized with (i.e. written to) the medium (or the non-volatile cache). -l, --lba=LBA where LBA is the lowest logical block address in the (volatile) cache to synchronize to the medium (or the non-volatile cache). Default value is 0 . -s, --sync-nv synchronize the (volatile) cache with the non-volatile cache. Without this option (or if there is no non-volatile cache in the device) the synchronization is with the medium. -v, --verbose increase the level of verbosity, (i.e. debug output). -V, --version print the version string and then exit. NOTES
Various numeric arguments (e.g. LBA) may include multiplicative suffixes or be given in hexadecimal. See the "NUMERIC ARGUMENTS" section in the sg3_utils(8) man page. EXIT STATUS
The exit status of sg_sync 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 (C) 2004-2009 Douglas Gilbert This software is distributed under a FreeBSD license. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PUR- POSE. SEE ALSO
sg_start(sg3_utils) sg3_utils-1.27 March 2009 SG_SYNC(8)

Check Out this Related Man Page

SG_UNMAP(8)							     SG3_UTILS							       SG_UNMAP(8)

NAME
sg_unmap - sends a SCSI UNMAP command SYNOPSIS
sg_unmap [--anchor] [--grpnum=GN] [--help] [--in=FILE] [--lba=LBA,LBA...] [--num=NUM,NUM...] [--timeout=TO] [--verbose] [--version] DEVICE DESCRIPTION
Send a SCSI UNMAP command to DEVICE to unmap one or more logical blocks. This command was introduced in SBC-3 revision 18 under the broad heading of "logical block provisioning". Logical blocks may also be unmapped by the SCSI WRITE SAME command; see the sg_write_same utility. The unmap capability is closely related to the ATA DATA SET MANAGEMENT command with the "Trim" bit set. Logical blocks to be unmapped can be specified in one of two ways to this utility. One way is by supplying the start LBAs to the '--lba=' option and the corresponding number(s) to unmap to the '--num=' option. The other way is by putting start LBA and number to unmap pairs in a file whose name is given to the '--in=' option. All values are assumed to be decimal unless prefixed by "0x" (or "0X") or have a trailing "h" (or "H") in which case they are interpreted as hexadecimal. When the '--lba=' option is given then the '--num=' option must also be given. If one has a comma separated list as its argument then the other must have the same number of elements in its list. The arguments can use a single space as a separator but need to be in quotes or escaped to not be misinterpreted by the shell. With the '--in=FILE' option an even number of values must be found and are interpreted as pairs: the first value in each pair is a starting LBA and the second value is the number to unmap from that LBA. Everything from and including a "#" on a line is ignored as are blank lines. Values may be comma, space and tab separated or appear on separate lines. OPTIONS
Arguments to long options are mandatory for short options as well. -a, --anchor sets the 'Anchor' bit in the command (introduced in sbc3r22). -g, --grpnum=GN sets the 'Group number' field to GN. Defaults to a value of zero. GN should be a value between 0 and 31. -h, --help output the usage message then exit. -I, --in=FILE where FILE is a file name containing pairs of values. The first member of each pair is a starting LBA and the second member of the pair is the number of logical blocks to unmap from and including that starting LBA. Values are interpreted as decimal unless indi- cated otherwise. This option cannot be present with the '--lba=' option. -l, --lba=LBA,LBA... where LBA,LBA... is a string of comma (or space) separated values that are interpreted as starting logical block addresses. Each number is interpreted as decimal unless prefixed by '0x' or '0X' (or it has a trailing 'h' or 'H'). An argument that contains any space separators needs to be quoted (or otherwise escaped). When this option is given then the '--num=' option must also be given and they must contain the same number of elements in their arguments. -n, --num=NUM,NUM... where NUM,NUM... is a string of comma (or space) separated values that are interpreted as a number of logical blocks to unmap. Each number is interpreted as decimal unless prefixed by '0x' or '0X' (or it has a trailing 'h' or 'H'). Note that 0 blocks is accept- able. An argument that contains any space separators needs to be quoted (or otherwise escaped). When this option is given then the '--lba=' option must also be given and they must contain the same number of elements in their arguments. -t, --timeout=TO where TO is a timeout value (in seconds) for the UNMAP command. The default value is 60 seconds. -v, --verbose increase the level of verbosity, (i.e. debug output). -V, --version print the version string and then exit. NOTES
Some limits: an LBA can be up to 64 bits, a NUM up to 32 bits (imposed by structure of UNMAP SCSI command parameter data). The NUM is fur- ther constrained by the MAXIMUM UNMAP LBA COUNT field in the BLOCK LIMITS VPD page (0xb0). The maximum number of LBA,NUM pairs is limited to 128 by this utility and may be further constrained by the MAXIMUM UNMAP BLOCK DESCRIPTOR COUNT field in the BLOCK LIMITS VPD page. Since it is unclear how long the UNMAP command will take to execute a '--timeout=" option has been provided. The default timeout period is 60 seconds. If all the logical blocks on a logical unit (e.g. a disk drive) are to be unmapped then the FORMAT UNIT SCSI command (see the sg_format utility) may be considered as an alternative. Support for logical block provisioning is indicated by the LBPME bit in the response to the SCSI READ CAPACITY (16) command (see the sg_readcap utility). In SBC-3 revision 25 the LBPU and ANC_SUP bits where added to the Logical Block Provisioning VPD page. When LBPU is set it indicates that the device supports the UNMAP command. When the ANC_SUP bit is set it indicates the device supports anchored LBAs. EXAMPLES
In the examples directory of the sg3_utils package there is a sg_unmap_example.txt file that shows the format that the '--in=' option accepts. EXIT STATUS
The exit status of sg_unmap 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 (C) 2009-2011 Douglas Gilbert This software is distributed under a FreeBSD license. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PUR- POSE. SEE ALSO
sg_format,sg_get_lba_status,sg_readcap,sg_vpd,sg_write_same(sg3_utils) sg3_utils-1.33 November 2011 SG_UNMAP(8)
Man Page