thermal: gov_power_allocator: Eliminate a redundant variable
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 10 Apr 2024 16:12:45 +0000 (18:12 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 23 Apr 2024 18:39:50 +0000 (20:39 +0200)
Notice that the passive field in struct thermal_zone_device is not
used by the Power Allocator governor itself and so the ordering of
its updates with respect to allow_maximum_power() or allocate_power()
does not matter.

Accordingly, make power_allocator_manage() update that field right
before returning, which allows the current value of it to be passed
directly to allow_maximum_power() without using the additional update
variable that can be dropped.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
drivers/thermal/gov_power_allocator.c

index 008b3ed60a913ee47e622ca2cee0dfdd004dcc03..7450ab77d5f09e733db1cb256678623326d761bc 100644 (file)
@@ -747,21 +747,18 @@ static void power_allocator_manage(struct thermal_zone_device *tz)
 {
        struct power_allocator_params *params = tz->governor_data;
        const struct thermal_trip *trip = params->trip_switch_on;
-       bool update;
 
        lockdep_assert_held(&tz->lock);
 
        if (trip && tz->temperature < trip->temperature) {
-               update = tz->passive;
-               tz->passive = 0;
                reset_pid_controller(params);
-               allow_maximum_power(tz, update);
+               allow_maximum_power(tz, tz->passive);
+               tz->passive = 0;
                return;
        }
 
-       tz->passive = 1;
-
        allocate_power(tz, params->trip_max->temperature);
+       tz->passive = 1;
 }
 
 static struct thermal_governor thermal_gov_power_allocator = {