• Benjamin Herrenschmidt's avatar
    powerpc/ppc64: Gracefully handle early interrupts · a944a9c4
    Benjamin Herrenschmidt authored
    If we take an interrupt such as a trap caused by a BUG_ON before the
    MMU has been setup, the interrupt handlers try to enable virutal mode
    and cause a recursive crash, making the original problem very hard
    to debug.
    
    This fixes it by adjusting the "kernel_msr" value in the PACA so that
    it only has MSR_IR and MSR_DR (translation for instruction and data)
    set after the MMU has been initialized for the processor.
    
    We may still not have a console yet but at least we don't get into
    a recursive fault (and early debug console or memory dump via JTAG
    of the kernel buffer *will* give us the proper error).
    Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
    a944a9c4
setup_64.c 19.9 KB