Document thermal power management as best effort
Some checks are pending
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-arm32 (push) Waiting to run
Build / build-win (push) Waiting to run
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run

This commit is contained in:
Andrea Mazzoleni 2026-09-07 00:20:02 +02:00
parent 305d1bce36
commit 595461f725

View file

@ -345,6 +345,20 @@ void state_thermal_cooldown(struct snapraid_state* state)
int sleep_time = cooldown_time;
log_tag("thermal:spindown\n");
/*
* Power management is best effort.
*
* Some devices may not support explicit spindown/spinup operations, or an
* operation may fail only for a subset of the devices. This must not make the
* whole thermal cooldown fail.
*
* Thermal safety is enforced by measuring the temperatures again after the
* cooldown. If any disk is still above the configured limit, the cooldown is
* repeated. Therefore failure to spin down a device only makes cooling less
* effective; it does not allow the operation to resume while a measurable disk
* is still above the temperature limit.
*/
state_device(state, DEVICE_DOWN, 0);
msg_progress("Cooldown...\n");