On Mon, Aug 03, 2020 at 05:06:14PM -0700, Josh Don wrote:
> SMT siblings share caches, so cache hotness should be irrelevant for
> cross-sibling migration.
> 
> Proposed-by: Venkatesh Pallipadi <ve...@google.com>
> Signed-off-by: Josh Don <josh...@google.com>
> ---
>  kernel/sched/fair.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
> index 2ba8f230feb9..5b203b55bcb2 100644
> --- a/kernel/sched/fair.c
> +++ b/kernel/sched/fair.c
> @@ -7402,6 +7402,9 @@ static int task_hot(struct task_struct *p, struct 
> lb_env *env)
>       if (unlikely(task_has_idle_policy(p)))
>               return 0;
>  
> +     if ((env->sd->flags & cpu_smt_flags()) == cpu_smt_flags())
> +             return 0;

I think that wants to be:

        if (env->sd->flags & SD_SHARE_CPUCAPACITY)

Also, perhaps stick a comment on top with the rationale for this.

> +
>       /*
>        * Buddy candidates are cache hot:
>        */
> -- 
> 2.28.0.163.g6104cc2f0b6-goog
> 

Reply via email to