thermal: gov_power_allocator: Eliminate a redundant variable
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>
This commit is contained in:
parent
41ddbcc6fd
commit
ca0e9728d3
@ -747,21 +747,18 @@ static void power_allocator_manage(struct thermal_zone_device *tz)
|
|||||||
{
|
{
|
||||||
struct power_allocator_params *params = tz->governor_data;
|
struct power_allocator_params *params = tz->governor_data;
|
||||||
const struct thermal_trip *trip = params->trip_switch_on;
|
const struct thermal_trip *trip = params->trip_switch_on;
|
||||||
bool update;
|
|
||||||
|
|
||||||
lockdep_assert_held(&tz->lock);
|
lockdep_assert_held(&tz->lock);
|
||||||
|
|
||||||
if (trip && tz->temperature < trip->temperature) {
|
if (trip && tz->temperature < trip->temperature) {
|
||||||
update = tz->passive;
|
|
||||||
tz->passive = 0;
|
|
||||||
reset_pid_controller(params);
|
reset_pid_controller(params);
|
||||||
allow_maximum_power(tz, update);
|
allow_maximum_power(tz, tz->passive);
|
||||||
|
tz->passive = 0;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
tz->passive = 1;
|
|
||||||
|
|
||||||
allocate_power(tz, params->trip_max->temperature);
|
allocate_power(tz, params->trip_max->temperature);
|
||||||
|
tz->passive = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct thermal_governor thermal_gov_power_allocator = {
|
static struct thermal_governor thermal_gov_power_allocator = {
|
||||||
|
Loading…
Reference in New Issue
Block a user