[PATCH v2 1/2] cpuidle: Add new macro to enter a retention idle state

Sudeep Holla sudeep.holla at arm.com
Mon Nov 13 04:27:45 PST 2017



On 09/11/17 00:38, Prashanth Prakash wrote:
> If a CPU is entering a low power idle state where it doesn't lose any
> context, then there is no need to call cpu_pm_enter()/cpu_pm_exit().
> Add a new macro(CPU_PM_CPU_IDLE_ENTER_RETENTION) to be used by cpuidle
> drivers when they are entering retention state. By not calling
> cpu_pm_enter and cpu_pm_exit we reduce the latency involved in
> entering and exiting the retention idle states.
> 
> On ARM64 based Qualcomm Server Platform we measured below overhead for
> for calling cpu_pm_enter and cpu_pm_exit for retention states.
> 
> workload: stress --hdd #CPUs --hdd-bytes 32M  -t 30
>         Average overhead of cpu_pm_enter - 1.2us
>         Average overhead of cpu_pm_exit  - 3.1us
> 

Just add a description to inform that if retention is enabled,
it's assumed to be full retention(IOW no state needs to be
saved/restored) and hence the CPU PM notifiers are not called.
We may need to change this in case we need to support partial
retention states in future.

Other than that,

Acked-by: Sudeep Holla <sudeep.holla at arm.com>

-- 
Regards,
Sudeep



More information about the linux-arm-kernel mailing list