diff options
author | Damien Le Moal <dlemoal@kernel.org> | 2025-07-01 21:53:19 +0900 |
---|---|---|
committer | Niklas Cassel <cassel@kernel.org> | 2025-07-02 12:01:33 +0200 |
commit | 65b2c92f69d3df81422d27e5be012e357e733241 (patch) | |
tree | c4184013f720ee0b70e1af75df376702b15ba345 /scripts/lib/kdoc/kdoc_files.py | |
parent | 4edf1505b76d30e1e1e283d431e4f84ad01ddcef (diff) |
ata: ahci: Disallow LPM policy control if not supported
Commit fa997b0576c9 ("ata: ahci: Do not enable LPM if no LPM states are
supported by the HBA") introduced an early return in
ahci_update_initial_lpm_policy() to ensure that the target_lpm_policy
of ports belonging to a host that does not support the Partial, Slumber
and DevSleep power states is unchanged and remains set to
ATA_LPM_UNKNOWN and thus prevents the execution of
ata_eh_link_set_lpm().
However, a user or a system daemon (e.g. systemd-udevd) may still
attempt changing the LPM policy through the sysfs
link_power_management_policy of the host.
Improve this to prevent sysfs LPM policy changes by setting the flag
ATA_FLAG_NO_LPM for the port of such host, and initialize the port
target_lpm_policy to ATA_LPM_MAX_POWER to guarantee that no unsupported
low power state is being used on the port and its link.
Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Reviewed-by: Niklas Cassel <cassel@kernel.org>
Link: https://lore.kernel.org/r/20250701125321.69496-9-dlemoal@kernel.org
Signed-off-by: Niklas Cassel <cassel@kernel.org>
Diffstat (limited to 'scripts/lib/kdoc/kdoc_files.py')
0 files changed, 0 insertions, 0 deletions