• Hidehiro Kawai's avatar
    ipmi: Avoid touching possible corrupted lists in the panic context · 06e5e345
    Hidehiro Kawai authored
    When processing queued messages in the panic context, IPMI driver
    tries to do it without any locking to avoid deadlocks.  However,
    this means we can touch a corrupted list if the kernel panicked
    while manipulating the list.  Fortunately, current `add-tail and
    del-from-head' style implementation won't touch the corrupted part,
    but it is inherently risky.
    
    To get rid of the risk, this patch re-initializes the message lists
    on panic if the related spinlock has already been acquired.  As the
    result, we may lose queued messages, but it's not so painful.
    Dropping messages on the received message list is also less
    problematic because no one can respond the received messages.
    Signed-off-by: default avatarHidehiro Kawai <hidehiro.kawai.ez@hitachi.com>
    
    Fixed a comment typo.
    Signed-off-by: default avatarCorey Minyard <cminyard@mvista.com>
    06e5e345
ipmi_msghandler.c 118 KB