• Nicholas Piggin's avatar
    powerpc: Do not send system reset request through the oops path · 4388c9b3
    Nicholas Piggin authored
    A system reset is a request to crash / debug the system rather than
    necessarily caused by encountering a BUG. So there is no need to
    serialize all CPUs behind the die lock, adding taints to all
    subsequent traces beyond the first, breaking console locks, etc.
    
    The system reset is NMI context which has its own printk buffers to
    prevent output being interleaved. Then it's better to have all
    secondaries print out their debug as quickly as possible and the
    primary will flush out all printk buffers during panic().
    
    So remove the 0x100 path from die, and move it into system_reset. Name
    the crash/dump reasons "System Reset".
    
    This gives "not tained" traces when crashing an untainted kernel. It
    also gives the panic reason as "System Reset" as opposed to "Fatal
    exception in interrupt" (or "die oops" for fadump).
    Signed-off-by: default avatarNicholas Piggin <npiggin@gmail.com>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    4388c9b3
traps.c 49.5 KB