* [PATCH v1 0/2] thermal: gov_step_wide: Two cleanups
@ 2024-04-03 18:09 Rafael J. Wysocki
2024-04-03 18:11 ` [PATCH v1 1/2] thermal: gov_step_wise: Simplify get_target_state() Rafael J. Wysocki
2024-04-03 18:12 ` [PATCH v1 2/2] thermal: gov_step_wise: Simplify checks related to passive trips Rafael J. Wysocki
0 siblings, 2 replies; 6+ messages in thread
From: Rafael J. Wysocki @ 2024-04-03 18:09 UTC (permalink / raw)
To: Linux PM; +Cc: LKML, Lukasz Luba, Daniel Lezcano
Hi Everyone,
The patches in this series clean up the step-wise thermal governor
and are not expected to alter its functionality.
Please see the changelogs of the patches for details.
The patches should apply directly on top of 6.9-rc2.
Thanks!
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v1 1/2] thermal: gov_step_wise: Simplify get_target_state()
2024-04-03 18:09 [PATCH v1 0/2] thermal: gov_step_wide: Two cleanups Rafael J. Wysocki
@ 2024-04-03 18:11 ` Rafael J. Wysocki
2024-04-04 11:15 ` Lukasz Luba
2024-04-03 18:12 ` [PATCH v1 2/2] thermal: gov_step_wise: Simplify checks related to passive trips Rafael J. Wysocki
1 sibling, 1 reply; 6+ messages in thread
From: Rafael J. Wysocki @ 2024-04-03 18:11 UTC (permalink / raw)
To: Linux PM; +Cc: LKML, Lukasz Luba, Daniel Lezcano
From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
The step-wise governor's get_target_state() function contains redundant
braces, redundant parens and a redundant next_target local variable, so
get rid of all that stuff.
No intentional functional impact.
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
---
drivers/thermal/gov_step_wise.c | 27 ++++++++++-----------------
1 file changed, 10 insertions(+), 17 deletions(-)
Index: linux-pm/drivers/thermal/gov_step_wise.c
===================================================================
--- linux-pm.orig/drivers/thermal/gov_step_wise.c
+++ linux-pm/drivers/thermal/gov_step_wise.c
@@ -32,7 +32,6 @@ static unsigned long get_target_state(st
{
struct thermal_cooling_device *cdev = instance->cdev;
unsigned long cur_state;
- unsigned long next_target;
/*
* We keep this instance the way it is by default.
@@ -40,32 +39,26 @@ static unsigned long get_target_state(st
* cdev in use to determine the next_target.
*/
cdev->ops->get_cur_state(cdev, &cur_state);
- next_target = instance->target;
dev_dbg(&cdev->device, "cur_state=%ld\n", cur_state);
if (!instance->initialized) {
- if (throttle) {
- next_target = clamp((cur_state + 1), instance->lower, instance->upper);
- } else {
- next_target = THERMAL_NO_TARGET;
- }
+ if (throttle)
+ return clamp(cur_state + 1, instance->lower, instance->upper);
- return next_target;
+ return THERMAL_NO_TARGET;
}
if (throttle) {
if (trend == THERMAL_TREND_RAISING)
- next_target = clamp((cur_state + 1), instance->lower, instance->upper);
- } else {
- if (trend == THERMAL_TREND_DROPPING) {
- if (cur_state <= instance->lower)
- next_target = THERMAL_NO_TARGET;
- else
- next_target = clamp((cur_state - 1), instance->lower, instance->upper);
- }
+ return clamp(cur_state + 1, instance->lower, instance->upper);
+ } else if (trend == THERMAL_TREND_DROPPING) {
+ if (cur_state <= instance->lower)
+ return THERMAL_NO_TARGET;
+
+ return clamp(cur_state - 1, instance->lower, instance->upper);
}
- return next_target;
+ return instance->target;
}
static void thermal_zone_trip_update(struct thermal_zone_device *tz,
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v1 2/2] thermal: gov_step_wise: Simplify checks related to passive trips
2024-04-03 18:09 [PATCH v1 0/2] thermal: gov_step_wide: Two cleanups Rafael J. Wysocki
2024-04-03 18:11 ` [PATCH v1 1/2] thermal: gov_step_wise: Simplify get_target_state() Rafael J. Wysocki
@ 2024-04-03 18:12 ` Rafael J. Wysocki
2024-04-04 11:26 ` Lukasz Luba
1 sibling, 1 reply; 6+ messages in thread
From: Rafael J. Wysocki @ 2024-04-03 18:12 UTC (permalink / raw)
To: Linux PM; +Cc: LKML, Lukasz Luba, Daniel Lezcano
From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Make it more clear from the code flow that the passive polling status
updates only take place for passive trip points.
No intentional functional impact.
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
---
drivers/thermal/gov_step_wise.c | 14 ++++++--------
1 file changed, 6 insertions(+), 8 deletions(-)
Index: linux-pm/drivers/thermal/gov_step_wise.c
===================================================================
--- linux-pm.orig/drivers/thermal/gov_step_wise.c
+++ linux-pm/drivers/thermal/gov_step_wise.c
@@ -92,15 +92,13 @@ static void thermal_zone_trip_update(str
if (instance->initialized && old_target == instance->target)
continue;
- if (old_target == THERMAL_NO_TARGET &&
- instance->target != THERMAL_NO_TARGET) {
- /* Activate a passive thermal instance */
- if (trip->type == THERMAL_TRIP_PASSIVE)
+ if (trip->type == THERMAL_TRIP_PASSIVE) {
+ /* If needed, update the status of passive polling. */
+ if (old_target == THERMAL_NO_TARGET &&
+ instance->target != THERMAL_NO_TARGET)
tz->passive++;
- } else if (old_target != THERMAL_NO_TARGET &&
- instance->target == THERMAL_NO_TARGET) {
- /* Deactivate a passive thermal instance */
- if (trip->type == THERMAL_TRIP_PASSIVE)
+ else if (old_target != THERMAL_NO_TARGET &&
+ instance->target == THERMAL_NO_TARGET)
tz->passive--;
}
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v1 1/2] thermal: gov_step_wise: Simplify get_target_state()
2024-04-03 18:11 ` [PATCH v1 1/2] thermal: gov_step_wise: Simplify get_target_state() Rafael J. Wysocki
@ 2024-04-04 11:15 ` Lukasz Luba
0 siblings, 0 replies; 6+ messages in thread
From: Lukasz Luba @ 2024-04-04 11:15 UTC (permalink / raw)
To: Rafael J. Wysocki; +Cc: LKML, Daniel Lezcano, Linux PM
Hi Rafael,
On 4/3/24 19:11, Rafael J. Wysocki wrote:
> From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>
> The step-wise governor's get_target_state() function contains redundant
> braces, redundant parens and a redundant next_target local variable, so
> get rid of all that stuff.
>
> No intentional functional impact.
>
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> ---
> drivers/thermal/gov_step_wise.c | 27 ++++++++++-----------------
> 1 file changed, 10 insertions(+), 17 deletions(-)
>
> Index: linux-pm/drivers/thermal/gov_step_wise.c
> ===================================================================
> --- linux-pm.orig/drivers/thermal/gov_step_wise.c
> +++ linux-pm/drivers/thermal/gov_step_wise.c
> @@ -32,7 +32,6 @@ static unsigned long get_target_state(st
> {
> struct thermal_cooling_device *cdev = instance->cdev;
> unsigned long cur_state;
> - unsigned long next_target;
>
> /*
> * We keep this instance the way it is by default.
> @@ -40,32 +39,26 @@ static unsigned long get_target_state(st
> * cdev in use to determine the next_target.
> */
> cdev->ops->get_cur_state(cdev, &cur_state);
> - next_target = instance->target;
> dev_dbg(&cdev->device, "cur_state=%ld\n", cur_state);
>
> if (!instance->initialized) {
> - if (throttle) {
> - next_target = clamp((cur_state + 1), instance->lower, instance->upper);
> - } else {
> - next_target = THERMAL_NO_TARGET;
> - }
> + if (throttle)
> + return clamp(cur_state + 1, instance->lower, instance->upper);
>
> - return next_target;
> + return THERMAL_NO_TARGET;
> }
>
> if (throttle) {
> if (trend == THERMAL_TREND_RAISING)
> - next_target = clamp((cur_state + 1), instance->lower, instance->upper);
> - } else {
> - if (trend == THERMAL_TREND_DROPPING) {
> - if (cur_state <= instance->lower)
> - next_target = THERMAL_NO_TARGET;
> - else
> - next_target = clamp((cur_state - 1), instance->lower, instance->upper);
> - }
> + return clamp(cur_state + 1, instance->lower, instance->upper);
> + } else if (trend == THERMAL_TREND_DROPPING) {
> + if (cur_state <= instance->lower)
> + return THERMAL_NO_TARGET;
> +
> + return clamp(cur_state - 1, instance->lower, instance->upper);
> }
>
> - return next_target;
> + return instance->target;
> }
>
> static void thermal_zone_trip_update(struct thermal_zone_device *tz,
>
>
>
LGTM,
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Regards,
Lukasz
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v1 2/2] thermal: gov_step_wise: Simplify checks related to passive trips
2024-04-03 18:12 ` [PATCH v1 2/2] thermal: gov_step_wise: Simplify checks related to passive trips Rafael J. Wysocki
@ 2024-04-04 11:26 ` Lukasz Luba
2024-04-04 11:57 ` Rafael J. Wysocki
0 siblings, 1 reply; 6+ messages in thread
From: Lukasz Luba @ 2024-04-04 11:26 UTC (permalink / raw)
To: Rafael J. Wysocki; +Cc: LKML, Daniel Lezcano, Linux PM
On 4/3/24 19:12, Rafael J. Wysocki wrote:
> From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>
> Make it more clear from the code flow that the passive polling status
> updates only take place for passive trip points.
>
> No intentional functional impact.
>
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> ---
> drivers/thermal/gov_step_wise.c | 14 ++++++--------
> 1 file changed, 6 insertions(+), 8 deletions(-)
>
> Index: linux-pm/drivers/thermal/gov_step_wise.c
> ===================================================================
> --- linux-pm.orig/drivers/thermal/gov_step_wise.c
> +++ linux-pm/drivers/thermal/gov_step_wise.c
> @@ -92,15 +92,13 @@ static void thermal_zone_trip_update(str
> if (instance->initialized && old_target == instance->target)
> continue;
>
> - if (old_target == THERMAL_NO_TARGET &&
> - instance->target != THERMAL_NO_TARGET) {
> - /* Activate a passive thermal instance */
> - if (trip->type == THERMAL_TRIP_PASSIVE)
> + if (trip->type == THERMAL_TRIP_PASSIVE) {
> + /* If needed, update the status of passive polling. */
> + if (old_target == THERMAL_NO_TARGET &&
> + instance->target != THERMAL_NO_TARGET)
> tz->passive++;
> - } else if (old_target != THERMAL_NO_TARGET &&
> - instance->target == THERMAL_NO_TARGET) {
> - /* Deactivate a passive thermal instance */
> - if (trip->type == THERMAL_TRIP_PASSIVE)
> + else if (old_target != THERMAL_NO_TARGET &&
> + instance->target == THERMAL_NO_TARGET)
> tz->passive--;
> }
>
>
>
>
The patch looks good, although I got some warning while applying with
my b4 tool:
BADSIG: DKIM/rjwysocki.net
Anyway, it looks like false warning IMO.
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v1 2/2] thermal: gov_step_wise: Simplify checks related to passive trips
2024-04-04 11:26 ` Lukasz Luba
@ 2024-04-04 11:57 ` Rafael J. Wysocki
0 siblings, 0 replies; 6+ messages in thread
From: Rafael J. Wysocki @ 2024-04-04 11:57 UTC (permalink / raw)
To: Lukasz Luba; +Cc: Rafael J. Wysocki, LKML, Daniel Lezcano, Linux PM
On Thu, Apr 4, 2024 at 1:26 PM Lukasz Luba <lukasz.luba@arm.com> wrote:
>
>
>
> On 4/3/24 19:12, Rafael J. Wysocki wrote:
> > From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> >
> > Make it more clear from the code flow that the passive polling status
> > updates only take place for passive trip points.
> >
> > No intentional functional impact.
> >
> > Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> > ---
> > drivers/thermal/gov_step_wise.c | 14 ++++++--------
> > 1 file changed, 6 insertions(+), 8 deletions(-)
> >
> > Index: linux-pm/drivers/thermal/gov_step_wise.c
> > ===================================================================
> > --- linux-pm.orig/drivers/thermal/gov_step_wise.c
> > +++ linux-pm/drivers/thermal/gov_step_wise.c
> > @@ -92,15 +92,13 @@ static void thermal_zone_trip_update(str
> > if (instance->initialized && old_target == instance->target)
> > continue;
> >
> > - if (old_target == THERMAL_NO_TARGET &&
> > - instance->target != THERMAL_NO_TARGET) {
> > - /* Activate a passive thermal instance */
> > - if (trip->type == THERMAL_TRIP_PASSIVE)
> > + if (trip->type == THERMAL_TRIP_PASSIVE) {
> > + /* If needed, update the status of passive polling. */
> > + if (old_target == THERMAL_NO_TARGET &&
> > + instance->target != THERMAL_NO_TARGET)
> > tz->passive++;
> > - } else if (old_target != THERMAL_NO_TARGET &&
> > - instance->target == THERMAL_NO_TARGET) {
> > - /* Deactivate a passive thermal instance */
> > - if (trip->type == THERMAL_TRIP_PASSIVE)
> > + else if (old_target != THERMAL_NO_TARGET &&
> > + instance->target == THERMAL_NO_TARGET)
> > tz->passive--;
> > }
> >
> >
> >
> >
>
> The patch looks good, although I got some warning while applying with
> my b4 tool:
> BADSIG: DKIM/rjwysocki.net
It's likely because it was sent from an address in the rjwysocki.net
domain, but it is perfectly fine to send "somebody else's" patches if
a replacement From: header is given.
Looks like a b4 issue to me.
> Anyway, it looks like false warning IMO.
>
> Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Thank you!
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2024-04-04 11:57 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-04-03 18:09 [PATCH v1 0/2] thermal: gov_step_wide: Two cleanups Rafael J. Wysocki
2024-04-03 18:11 ` [PATCH v1 1/2] thermal: gov_step_wise: Simplify get_target_state() Rafael J. Wysocki
2024-04-04 11:15 ` Lukasz Luba
2024-04-03 18:12 ` [PATCH v1 2/2] thermal: gov_step_wise: Simplify checks related to passive trips Rafael J. Wysocki
2024-04-04 11:26 ` Lukasz Luba
2024-04-04 11:57 ` Rafael J. Wysocki
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox