[RFC PATCH v2 1/3] cpufreq: handle the return value of '.set_boost()' properly

From: Xiongfeng Wang
Date: Mon May 18 2020 - 03:16:56 EST


'freq_qos_update_request()' called by 'cpufreq_boost_set_sw()' reutrns 1
when the effective constraint value of frequency QoS has changed. It's
not an error code. So handle the return value 1 of '.set_boost()' in
'cpufreq_boost_trigger_state()' properly.

Signed-off-by: Xiongfeng Wang <wangxiongfeng2@xxxxxxxxxx>
---
drivers/cpufreq/cpufreq.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
index 4adac3a..bb6746e 100644
--- a/drivers/cpufreq/cpufreq.c
+++ b/drivers/cpufreq/cpufreq.c
@@ -2540,7 +2540,10 @@ int cpufreq_boost_trigger_state(int state)
write_unlock_irqrestore(&cpufreq_driver_lock, flags);

ret = cpufreq_driver->set_boost(state);
- if (ret) {
+ if (ret == 1) {
+ pr_debug("The effective constraint value of frequency QoS has changed.\n");
+ return 0;
+ } else if (ret) {
write_lock_irqsave(&cpufreq_driver_lock, flags);
cpufreq_driver->boost_enabled = !state;
write_unlock_irqrestore(&cpufreq_driver_lock, flags);
--
1.7.12.4