Re: [PATCH] kernel/sysrq: reset watchdog on all CPUs while processing sysrq-w

From: Andrey Ryabinin
Date: Wed Jun 08 2016 - 10:53:16 EST




On 06/08/2016 04:13 PM, Ingo Molnar wrote:
>
> * Andrey Ryabinin <aryabinin@xxxxxxxxxxxxx> wrote:
>
>> Lengthy output of sysrq-w may take a lot of time on slow serial console.
>> Currently we reset NMI-watchdog on the current CPU to avoid softlockup.
>> Sometimes this doesn't work since watchdog might trigger on the other
>> CPU which is waiting for an IPI to proceed.
>>
>> Reset watchdog on all CPUs to prevent spurious softlockup messages.
>>
>> Signed-off-by: Andrey Ryabinin <aryabinin@xxxxxxxxxxxxx>
>> ---
>> kernel/sched/core.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/kernel/sched/core.c b/kernel/sched/core.c
>> index 7f2cae4..c135eee 100644
>> --- a/kernel/sched/core.c
>> +++ b/kernel/sched/core.c
>> @@ -5134,7 +5134,7 @@ void show_state_filter(unsigned long state_filter)
>> * reset the NMI-timeout, listing all files on a slow
>> * console might take a lot of time:
>> */
>> - touch_nmi_watchdog();
>> + touch_all_softlockup_watchdogs();
>
> So don't we want both?
>

Indeed, we need both.
I was under the false impression that touch_all_softlockup_watchdogs() will reset NMI timeout too

> Thanks,
>
> Ingo
>