• Nathan Lynch's avatar
    powerpc/rtas: dispatch partition migration requests to pseries · 4d756894
    Nathan Lynch authored
    sys_rtas() cannot call ibm,suspend-me directly in the same way it
    handles other inputs. Instead it must dispatch the request to code
    that can first perform the H_JOIN sequence before any call to
    ibm,suspend-me can succeed. Over time kernel/rtas.c has accreted a fair
    amount of platform-specific code to implement this.
    
    Since a different, more robust implementation of the suspend sequence
    is now in the pseries platform code, we want to dispatch the request
    there.
    
    Note that invoking ibm,suspend-me via the RTAS syscall is all but
    deprecated; this change preserves ABI compatibility for old programs
    while providing to them the benefit of the new partition suspend
    implementation. This is a behavior change in that the kernel performs
    the device tree update and firmware activation before returning, but
    experimentation indicates this is tolerated fine by legacy user space.
    Signed-off-by: default avatarNathan Lynch <nathanl@linux.ibm.com>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    Link: https://lore.kernel.org/r/20201207215200.1785968-16-nathanl@linux.ibm.com
    4d756894
rtas.c 34.4 KB