lkml.org 
[lkml]   [2013]   [Mar]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH]Skip unnecessary WARN_ON in panic case

* Seiji Aguchi <seiji.aguchi@hds.com> wrote:

> [Problem]
>
> When kernel panics, unnecessary WARN_ON() may be printed after panic messages in a following scenario.
> - A panicked cpu stops other cpus via smp_send_stop().
> - Other cpus turn to be offline in stop_this_cpu().
> - The panicked cpu enables interrupt.
> - native_smp_send_reschedule() is called via a timer interrupt on the panicked cpu.
> - The panicked cpu tries to send a reschedule IPI to other cpus
> - The panicked cpu hits WARN_ON() because other cpus have already been offlined.
>
> If an user has just a VGA console, panic messages may be missed because
> they are floated outside a screen due to messages of the WARN_ON(). In
> this case, it could be difficult to investigate the reason why a kernel
> panicked.

So it appears the problem occurs because the other CPUs are not offlined
correctly, and still have pending work which may generate wakeup IPIs to
them?

The fix would be to either offline them properly - or, if we don't want to
do that to keep panicking simple, why do we mark them offline? They aren't
really offline in a proper way.

Thanks,

Ingo


\
 
 \ /
  Last update: 2013-03-11 10:02    [W:0.048 / U:0.508 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site