Skip to content
  • Jimi Xenidis's avatar
    powerpc/kexec: Add kexec "hold" support for Book3e processors · 96f013fe
    Jimi Xenidis authored
    
    
    Motivation:
    IBM Blue Gene/Q comes with some very strange firmware that I'm trying to get out
    of using in the kernel.  So instead I spin all the threads in the boot wrapper
    (using the firmware) and have them enter the kexec stub, pre-translated at the
    virtual "linear" address, never touching firmware again.
    
    This works strategy works wonderfully, but I need the following patch in the
    kexec stub. I believe it should not effect Book3S and Book3E does not appear
    to be here yet so I'd love to get any criticisms up front.
    
    This patch adds two items:
    
    1) Book3e requires that GPR4 survive the "hold" process, so we make
       sure that happens.
    2) Book3e has no real mode, and the hold code exploits this.  Since
       these processors ares always translated, we arrange for the kexeced
       threads to enter the hold code using the normal kernel linear mapping.
    
    Signed-off-by: default avatarJimi Xenidis <jimix@pobox.com>
    Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
    96f013fe