2023-02-07 20:00:12

by Rafael J. Wysocki

[permalink] [raw]
Subject: [PATCH v1] cpuidle: driver: Update microsecond values of state parameters as needed

From: Rafael J. Wysocki <[email protected]>

If the cpuidle driver provides the target residency and exit latency in
nanoseconds, the corresponding values in microseconds need to be set to
reflect the provided numbers in order for the sysfs interface to show
them correctly, so make __cpuidle_driver_init() do that.

Signed-off-by: Rafael J. Wysocki <[email protected]>
---
drivers/cpuidle/driver.c | 4 ++++
1 file changed, 4 insertions(+)

Index: linux-pm/drivers/cpuidle/driver.c
===================================================================
--- linux-pm.orig/drivers/cpuidle/driver.c
+++ linux-pm/drivers/cpuidle/driver.c
@@ -183,11 +183,15 @@ static void __cpuidle_driver_init(struct
s->target_residency_ns = s->target_residency * NSEC_PER_USEC;
else if (s->target_residency_ns < 0)
s->target_residency_ns = 0;
+ else
+ s->target_residency = s->target_residency_ns / NSEC_PER_USEC;

if (s->exit_latency > 0)
s->exit_latency_ns = s->exit_latency * NSEC_PER_USEC;
else if (s->exit_latency_ns < 0)
s->exit_latency_ns = 0;
+ else
+ s->exit_latency = s->exit_latency_ns / NSEC_PER_USEC;
}
}






2023-02-09 18:16:29

by Artem Bityutskiy

[permalink] [raw]
Subject: Re: [PATCH v1] cpuidle: driver: Update microsecond values of state parameters as needed

On Tue, 2023-02-07 at 20:59 +0100, Rafael J. Wysocki wrote:
> From: Rafael J. Wysocki <[email protected]>
>
> If the cpuidle driver provides the target residency and exit latency in
> nanoseconds, the corresponding values in microseconds need to be set to
> reflect the provided numbers in order for the sysfs interface to show
> them correctly, so make __cpuidle_driver_init() do that.
>
> Signed-off-by: Rafael J. Wysocki <[email protected]>

Tested-by: Artem Bityutskiy <[email protected]>

Thanks!