[PATCH v2 2/3] sched: Cleanup SCHED_THERMAL_PRESSURE kconfig entry

Qian Cai cai at lca.pw
Mon Jul 27 10:18:48 EDT 2020


On Sun, Jul 12, 2020 at 05:59:16PM +0100, Valentin Schneider wrote:
> As Russell pointed out [1], this option is severely lacking in the
> documentation department, and figuring out if one has the required
> dependencies to benefit from turning it on is not straightforward.
> 
> Make it non user-visible, and add a bit of help to it. While at it, make it
> depend on CPU_FREQ_THERMAL.
> 
> [1]: https://lkml.kernel.org/r/20200603173150.GB1551@shell.armlinux.org.uk
> 
> Signed-off-by: Valentin Schneider <valentin.schneider at arm.com>
> ---
>  init/Kconfig | 15 ++++++++++++++-
>  1 file changed, 14 insertions(+), 1 deletion(-)
> 
> diff --git a/init/Kconfig b/init/Kconfig
> index 0498af567f70..0a97d85568b2 100644
> --- a/init/Kconfig
> +++ b/init/Kconfig
> @@ -492,8 +492,21 @@ config HAVE_SCHED_AVG_IRQ
>  	depends on SMP
>  
>  config SCHED_THERMAL_PRESSURE
> -	bool "Enable periodic averaging of thermal pressure"
> +	bool
>  	depends on SMP
> +	depends on CPU_FREQ_THERMAL
> +	help
> +	  Select this option to enable thermal pressure accounting in the
> +	  scheduler. Thermal pressure is the value conveyed to the scheduler
> +	  that reflects the reduction in CPU compute capacity resulted from
> +	  thermal throttling. Thermal throttling occurs when the performance of
> +	  a CPU is capped due to high operating temperatures.
> +
> +	  If selected, the scheduler will be able to balance tasks accordingly,
> +	  i.e. put less load on throttled CPUs than on non/less throttled ones.
> +
> +	  This requires the architecture to implement
> +	  arch_set_thermal_pressure() and arch_get_thermal_pressure().
>  
>  config BSD_PROCESS_ACCT
>  	bool "BSD Process Accounting"
> -- 

On arm64 linux-next (20200727),

https://gitlab.com/cailca/linux-mm/-/blob/master/arm64.config

WARNING: unmet direct dependencies detected for SCHED_THERMAL_PRESSURE
  Depends on [n]: SMP [=y] && CPU_FREQ_THERMAL [=n]
  Selected by [y]:
  - ARM64 [=y]



More information about the linux-arm-kernel mailing list