.TH SG_BG_CTL "8" "May 2016" "sg3_utils\-1.43" SG3_UTILS .SH NAME sg_bg_ctl \- send SCSI BACKGROUND CONTROL command .SH SYNOPSIS .B sg_bg_ctl [\fI\-\-ctl=CTL\fR] [\fI\-\-help\fR] [\fI\-\-time=TN\fR] [\fI\-\-verbose\fR] [\fI\-\-version\fR] \fIDEVICE\fR .SH DESCRIPTION .\" Add any additional description here .PP Sends a SCSI BACKGROUND CONTROL command to the \fIDEVICE\fR. This command was first found in the SBC\-4 draft standard revision 8 (sbc4r08.pdf). It can be used to start and stop 'advanced background operations' on the \fIDEVICE\fR. Only resource or thin provisioned devices (logical units which are typically (solid state) disks) support this command. Those advanced background operations often include garbage collection type operations which may degrade the disk's performance while they are being performed. .SH OPTIONS Arguments to long options are mandatory for short options as well. .TP \fB\-c\fR, \fB\-\-ctl\fR=\fICTL\fR \fICTL\fR is the value placed in the BO_CTL field of the BACKGROUND CONTROL command (cdb). It is a two bit field so has 4 variants: 0 does not change the host initiated advanced background operations; 1 starts these operations; 2 stops these operations and 3 is reserved. The default value is 0. .TP \fB\-h\fR, \fB\-\-help\fR output the usage message then exit. .TP \fB\-t\fR, \fB\-\-time\fR=\fITN\fR \fITN\fR is a maximum time (with a unit of 100 ms or 1/10 second) that advanced background operations can occur. This value is ignored if the \fICTL\fR argument is other than 1. The default value is 0 which means there is no maximum time limit. Only values 0 to 255 (which is 25.5 seconds) can be given. This value is place in the BO_TIME field of the BACKGROUND CONTROL command. .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 According to T10, support for 'background control operations' is indicated by the BOCS bit being set in the Block device characteristics VPD page [0xb1]. The setting of the BOCS bit can be checked with the sg_vpd and sdparm utilities (and it is read only). There is a Background operations control mode page [0xa, 0x6] with a BO_MODE field for modifying the action of this operation. The BO_MODE field can be accessed and possibly modified with the sdparm utility. The BO_STATUS field can be found in the Background operation log page [0x15, 0x2] and that can be viewed with the sg_logs utility. .PP The current draft describing this area is SBC\-4 revision 10 (sbc4r10.pdf) in clause 4.33 . That contains the following example of a background operation: "Advanced background operation may include NAND block erase operations, media read operations, and media write operations (e.g., garbage collection), which may impact response time for normal read requests or write requests from the application client." .SH EXIT STATUS The exit status of sg_bg_ctl 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 . .SH COPYRIGHT Copyright \(co 2016 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_vpd,sg_logs(sg3_utils); sdparm(sdparm)