Re: [PATCH] sched/rt: silence double clock update warning by using rq_lock wrappers
From: Valentin Schneider
Date: Mon Sep 16 2019 - 04:56:50 EST
[Added Steven to Cc]
On 15/08/2019 18:24, Valentin Schneider wrote:
> On 15/08/2019 15:53, Phil Auld wrote:
>> With WARN_DOUBLE_CLOCK enabled a false positive warning can occur in rt
>>
>> [] rq->clock_update_flags & RQCF_UPDATED
>> [] WARNING: CPU: 6 PID: 21426 at kernel/sched/core.c:225
>> update_rq_clock+0x90/0x130
>> [] Call Trace:
>> [] update_rq_clock+0x90/0x130
>> [] sched_rt_period_timer+0x11f/0x340
>> [] __hrtimer_run_queues+0x100/0x280
>> [] hrtimer_interrupt+0x100/0x220
>> [] smp_apic_timer_interrupt+0x6a/0x130
>> [] apic_timer_interrupt+0xf/0x20
>>
>> sched_rt_period_timer does:
>> raw_spin_lock(&rq->lock);
>> update_rq_clock(rq);
>>
>> which triggers the warning because of not using the rq_lock wrappers.
>> So, use the wrappers.
>>
>> Signed-off-by: Phil Auld <pauld@xxxxxxxxxx>
>> Cc: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
>> Cc: Ingo Molnar <mingo@xxxxxxxxxx>
>> Cc: Valentin Schneider <valentin.schneider@xxxxxxx>
>> Cc: Dietmar Eggemann <dietmar.eggemann@xxxxxxx>
>
> Looks sane to me, and no missing _irqsave this time around ;)
>
> Reviewed-by: Valentin Schneider <valentin.schneider@xxxxxxx>
>
Stumbled on that one while reviewing my inbox, ping?