From 2fad853b41b0bffa5c0c7ea9eac6ad30fb4dfc98 Mon Sep 17 00:00:00 2001 From: Lukasz Luba Date: Tue, 13 Nov 2018 18:23:43 +0100 Subject: [PATCH] sched/power: max allowed state capping fixed Signed-off-by: Lukasz Luba --- kernel/sched/power.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/kernel/sched/power.c b/kernel/sched/power.c index cf56484f95ca..923f689860d1 100644 --- a/kernel/sched/power.c +++ b/kernel/sched/power.c @@ -656,7 +656,10 @@ static int cooling_dev_set_state(struct _thermal_zone *zone, /* we treat single-cooling-dev-zone as a guard for max temp */ cooling->max_single_state = target; } else { - if (cooling->max_single_state < target) { + /* Lower 'target' state means higer frequency. Prevent going to + * higer freq if there was a limit due temperature value + * from sensor closer to the device. */ + if (cooling->max_single_state > target) { target = cooling->max_single_state; ret = -EAGAIN; } -- 2.34.1