Re: [PATCH] sched/pelt: Use or not add in update_irq_load_avg()

From: Peter Zijlstra
Date: Sat Oct 09 2021 - 18:46:22 EST


On Sun, Oct 10, 2021 at 02:06:42AM +0800, Tao Zhou wrote:
> The ret value of update_irq_load_avg() can be 2. And this value
> is used in __update_blocked_others(). It should be 0 or 1. Use
> OR operation in update_irq_load_avg().

AFAICT it doesn't matter one way or the other, but you're probably right
in that |= makes more sense.

No Signed-off-by tag...

> ---
> kernel/sched/pelt.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/sched/pelt.c b/kernel/sched/pelt.c
> index a554e3bbab2b..7edf21f7977c 100644
> --- a/kernel/sched/pelt.c
> +++ b/kernel/sched/pelt.c
> @@ -458,7 +458,7 @@ int update_irq_load_avg(struct rq *rq, u64 running)
> 0,
> 0,
> 0);
> - ret += ___update_load_sum(rq->clock, &rq->avg_irq,
> + ret |= ___update_load_sum(rq->clock, &rq->avg_irq,
> 1,
> 1,
> 1);
> --
> 2.32.0
>