Re: [PATCH] sched/fair: ignore cache hotness for SMT migration

From: peterz
Date: Tue Aug 04 2020 - 06:56:33 EST


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 <venki@xxxxxxxxxx>
> Signed-off-by: Josh Don <joshdon@xxxxxxxxxx>
> ---
> 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
>