linux-stable/kernel/power
Chungkai Yang 9a2c57fd32 PM: QoS: Restore support for default value on frequency QoS
commit 3a8395b565 upstream.

Commit 8d36694245 ("PM: QoS: Add check to make sure CPU freq is
non-negative") makes sure CPU freq is non-negative to avoid negative
value converting to unsigned data type. However, when the value is
PM_QOS_DEFAULT_VALUE, pm_qos_update_target specifically uses
c->default_value which is set to FREQ_QOS_MIN/MAX_DEFAULT_VALUE when
cpufreq_policy_alloc is executed, for this case handling.

Adding check for PM_QOS_DEFAULT_VALUE to let default setting work will
fix this problem.

Fixes: 8d36694245 ("PM: QoS: Add check to make sure CPU freq is non-negative")
Link: https://lore.kernel.org/lkml/20230626035144.19717-1-Chung-kai.Yang@mediatek.com/
Link: https://lore.kernel.org/lkml/20230627071727.16646-1-Chung-kai.Yang@mediatek.com/
Link: https://lore.kernel.org/lkml/CAJZ5v0gxNOWhC58PHeUhW_tgf6d1fGJVZ1x91zkDdht11yUv-A@mail.gmail.com/
Signed-off-by: Chungkai Yang <Chung-kai.Yang@mediatek.com>
Cc: 6.0+ <stable@vger.kernel.org> # 6.0+
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-07-23 13:49:45 +02:00
..
autosleep.c PM: sleep: fix typos in comments 2021-04-08 19:37:21 +02:00
console.c
energy_model.c PM: EM: fix memory leak with using debugfs_lookup() 2023-03-10 09:33:53 +01:00
hibernate.c PM: hibernate: Do not get block device exclusively in test_resume mode 2023-05-11 23:03:38 +09:00
Kconfig pm/sleep: Add PM_USERSPACE_AUTOSLEEP Kconfig 2022-07-01 10:39:20 +02:00
main.c freezer,sched: Rewrite core freezer logic 2022-09-07 21:53:50 +02:00
Makefile PM: sleep: Narrow down -DDEBUG on kernel/power/ files 2022-04-13 16:34:01 +02:00
power.h PM: hibernate: Turn snapshot_test into global variable 2023-05-11 23:03:38 +09:00
poweroff.c kernel/power: constify sysrq_key_op 2020-05-15 14:53:20 +02:00
process.c PM: sleep: Avoid using pr_cont() in the tasks freezing code 2023-03-03 11:52:23 +01:00
qos.c PM: QoS: Restore support for default value on frequency QoS 2023-07-23 13:49:45 +02:00
snapshot.c PM: hibernate: Fix mistake in kerneldoc comment 2022-12-31 13:31:55 +01:00
suspend.c Scheduler changes for v6.1: 2022-10-10 09:10:28 -07:00
suspend_test.c PM: suspend: fix return value of __setup handler 2022-03-01 18:55:07 +01:00
swap.c PM: hibernate: Do not get block device exclusively in test_resume mode 2023-05-11 23:03:38 +09:00
user.c freezer: Have {,un}lock_system_sleep() save/restore flags 2022-09-07 21:53:48 +02:00
wakelock.c PM: wakeup: simplify the output logic of pm_show_wakelocks() 2022-01-25 18:27:02 +01:00