-
Notifications
You must be signed in to change notification settings - Fork 67
Background Operations
All HDDs and SSDs have background operations that run. Some can be controlled through features available on the drive and some cannot.
Background operations have become critical in maintaining data integrity and reliability for modern storage devices, so many are not able to be stopped.
While some original background tasks were to scan and find defects, it is no longer as simple as that. Modern storage devices and their controllers are much more complicated than they used to be and as storage technology has changed so have the tasks.
By definition in all standards, all drive initiated background activity is vendor specific. The implementation of the task, what the task does, or what the task affects is vendor specific as well.
In modern storage there may be different triggers for each background task.
Some tasks may be triggered on a time basis.
Some tasks may get triggered when they encounter a bad sector.
Some tasks may get triggered by a change in device configuration such as a change in the device's sector size (Fast Format).
Some tasks may get triggered by another feature, such as SMART, as a result of a timer or running a SMART offline test routine.
Background operations may or may not affect the performance or power consumption of a device, but it depends what the vendor specific background task is doing.
Some background tasks will be prioritized over entering low-power modes, others will automatically be paused to enter low-power modes based on the timer configurations. A general rule is any background task that affects data integrity or reliability will be prioritized over low-power modes.
If a drive is not entering a low-power mode with a configured timer, it is likely processing a task to keep the drive and your data safe. Software can issue commands to send the drive into an idle state or standby state if needed though. If a command specifies the transition to a lower power mode then the device will accept it and transition to that state, pausing the background activity until it has been spun up again and has idle time to resume processing of the background task.
SCSI and SAS devices support enabling or disabling background scans and background pre-scans of the medium.
SATA drives do not specify any control over background operations. The closest thing to this is the SMART Auto-offline feature that has been obsolete for many many years. Even though modern Seagate drives show this as supported and the drive responds without error to disabling this feature, this will not disable today's background tasks.
This is a new feature that was standardized in ACS-4 for ATA devices and SBC-4 for SCSI devices.
This feature does not allow directly cancelling background activity but instead provides information to the host about how long until the drive begins experiencing performance reduction and an approximate time it will take to complete background activity. With this information the host can then issue a command to start the background activity at a time that is more convenient for the host.
This is an optional feature so a device may or may not support this capability.
openSeaChest does not implement support for this feature yet, but it will be added in the future as Seagate products begin to support it.
This is dependent on the task and the device vendor's firmware. Unless the vendor implements the Advanced Background Operation Control feature, there is no way to know how long a background task will take to complete. Some tasks may take minutes and others may take hours and others may take days.
SCSI/SAS allow for more control of background operations as well as specifying preference between background operations and low-power modes if the firmware supports configuring these settings.
The EPC or power conditions mode page allows selecting between prioritizing low power modes or prioritizing background operations.
The Background control mode page allows enabling or disabling background medium scans, background pre-scans, setting the background scan interval time (how often to run the scan), the pre-scan time limit, minimum idle time before background scan begins, and maximum time to suspend a background scan.
When a SCSI/SAS drive runs a background medium scan it will also log results about what it found so that the host can review what sectors may have errors or were corrected automatically (depending on automatic-read reassignment setting).