blob: cf2cfc42b0fe550b80f787a58867c72bba6b02de [file] [log] [blame]
.TH SG_SYNC "8" "December 2006" "sg3_utils\-1.22" SG3_UTILS
.SH NAME
sg_sync \- send the scsi command synchronize cache
.SH SYNOPSIS
.B sg_sync
[\fI\-\-count=COUNT\fR] [\fI\-\-group=GROUP\fR] [\fI\-\-help\fR]
[\fI\-\-immed\fR] [\fI\-\-lba=LBA\fR] [\fI\-\-sync\-nv\fR]
[\fI\-\-verbose\fR] [\fI\-\-version\fR] \fIDEVICE\fR
.SH DESCRIPTION
.\" Add any additional description here
.PP
Send SYNCHRONIZE CACHE (10) command to \fIDEVICE\fR. 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 \fI\-\-sync\-nv\fR 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.
.PP
If the \fILBA\fR and \fICOUNT\fR arguments are both zero (their defaults)
then all blocks in the cache are synchronized. If \fILBA\fR is greater than
zero while \fICOUNT\fR is zero then blocks in the cache whose addresses are
from and including \fILBA\fR to the highest lba on the device are
synchronized. If both \fILBA\fR and \fICOUNT\fR are non zero then blocks in
the cache whose addresses lie in the range \fILBA\fR to
\fILBA\fR+\fICOUNT\fR\-1 inclusive are synchronized with the medium.
.SH OPTIONS
Arguments to long options are mandatory for short options as well.
.TP
\fB\-c\fR, \fB\-\-count\fR=\fICOUNT\fR
where \fICOUNT\fR is the number of blocks to synchronize from and including
\fILBA\fR. Default value is 0. When 0 then all blocks in the (volatile) cache
from and including \fILBA\fR argument to the highest block address are
synchronized.
.TP
\fB\-g\fR, \fB\-\-group\fR=\fIGROUP\fR
where \fIGROUP\fR is the group number which can be between 0 and 31 inclusive.
The default value is 0 . Group numbers are used to segregate data collected
within the device. This is a new feature in SBC\-2 and can probably be
ignored for the time being.
.TP
\fB\-h\fR, \fB\-\-help\fR
output the usage message then exit.
.TP
\fB\-i\fR, \fB\-\-immed\fR
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).
.TP
\fB\-l\fR, \fB\-\-lba\fR=\fILBA\fR
where \fILBA\fR is the lowest logical block address in the (volatile)
cache to synchronize to the medium (or the non\-volatile cache). Default
value is 0 .
.TP
\fB\-s\fR, \fB\-\-sync-nv\fR
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.
.TP
\fB\-v\fR, \fB\-\-verbose\fR
increase the level of verbosity, (i.e. debug output).
.TP
\fB\-V\fR, \fB\-\-version\fR
print the version string and then exit.
.SH NOTES
The \fICOUNT\fR, \fIGROUP\fR and \fILBA\fR arguments may be followed by one
of these multiplicative suffixes:
c C *1; w W *2; b B *512; k K KiB *1,024; KB *1,000; m M MiB *1,048,576;
MB *1,000,000 . This pattern continues for "G", "T" and "P". Also a suffix of
the form "x<n>" multiplies the leading number by <n>. The "T" and "P"
suffixes can only be used for \fICOUNT\fR and \fILBA\fR.
.PP
Alternatively numerical values can be given in hexadecimal preceded by
either "0x" or "0X" (or with a trailing "h" or "H"). When hex numbers are
given, multipliers cannot be used.
.SH EXIT STATUS
The exit status of sg_sync is 0 when it is successful. Otherwise see
the sg3_utils(8) man page.
.SH AUTHORS
Written by Douglas Gilbert.
.SH "REPORTING BUGS"
Report bugs to <dgilbert at interlog dot com>.
.SH COPYRIGHT
Copyright \(co 2004\-2006 Douglas Gilbert
.br
This software is distributed under a FreeBSD license. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
.SH "SEE ALSO"
.B sg_start(sg3_utils)