This contains the previous 28 series in front, with one small fix mentioned in the last thread, plus one extra patch to remove unused BRANCH_TO_COMMON macro, so first 29 up to SPR RAW scoreboard are all quite minimal generated code change.
The next patches start to get a bit more into code change, starting to mainly attack the "odd" handlers which deviate significantly from the norm (sreset, machine check, still have pending work to do on hmi). The aim is to simplify them and make them more regular. That makes maintaining easier, and also reduces the need to have a lot of special cases and splits in macros, which helps further cleanup in future. After patch 19 I should add it's so much more pleasant to hack on this code, you don't have to rebuild practically the whole kernel whenever you change anything. Oh I also got a KUAP fix in there we should backport. Thanks, Nick Nicholas Piggin (52): powerpc/64s/exception: fix line wrap and semicolon inconsistencies in macros powerpc/64s/exception: remove H concatenation for EXC_HV variants powerpc/64s/exception: consolidate EXCEPTION_PROLOG_2 with _NORI variant powerpc/64s/exception: move and tidy EXCEPTION_PROLOG_2 variants powerpc/64s/exception: fix sreset KVM test code powerpc/64s/exception: remove the "extra" macro parameter powerpc/64s/exception: consolidate maskable and non-maskable prologs powerpc/64s/exception: merge KVM handler and skip variants powerpc/64s/exception: KVM handler can set the HSRR trap bit powerpc/64s/exception: Make EXCEPTION_PROLOG_0 a gas macro for consistency with others powerpc/64s/exception: Move EXCEPTION_COMMON handler and return branches into callers powerpc/64s/exception: Move EXCEPTION_COMMON additions into callers powerpc/64s/exception: unwind exception-64s.h macros powerpc/64s/exception: improve 0x500 handler code powerpc/64s/exception: move EXCEPTION_PROLOG_2* to a more logical place powerpc/64s/exception: remove STD_EXCEPTION_COMMON variants powerpc/64s/exception: move KVM related code together powerpc/64s/exception: move exception-64s.h code to exception-64s.S where it is used powerpc/64s/exception: move head-64.h code to exception-64s.S where it is used powerpc/64s/exception: remove __BRANCH_TO_KVM powerpc/64s/exception: remove unused BRANCH_TO_COMMON powerpc/64s/exception: use a gas macro for system call handler code powerpc/64s/exception: fix indenting irregularities powerpc/64s/exception: generate regs clear instructions using .rept powerpc/64s/exception: remove bad stack branch powerpc/64s/exception: remove pointless EXCEPTION_PROLOG macro indirection powerpc/64s/exception: move paca save area offsets into exception-64s.S powerpc/64s/exception: clean up system call entry powerpc/64s/exception: avoid SPR RAW scoreboard stall in real mode entry powerpc/64s/exception: optimise system_reset for idle, clean up non-idle case powerpc/64s/exception: mtmsrd L=1 cleanup powerpc/64s/exception: windup use r9 consistently to restore SPRs powerpc/64s/exception: move machine check windup in_mce handling powerpc/64s/exception: simplify hmi windup code powerpc/64s/exception: shuffle windup code around powerpc/64s/exception: use common macro for windup powerpc/64s/exception: add dar and dsisr options to exception macro powerpc/64s/exception: machine check use standard macros to save dar/dsisr powerpc/64s/exception: denorm handler use standard scratch save macro powerpc/64s/exception: move SET_SCRATCH0 into EXCEPTION_PROLOG_0 powerpc/tm: update comment about interrupt re-entrancy powerpc/64s/exception: machine check fwnmi does not trigger when in HV mode powerpc/64s/exception: machine check early only runs in HV mode powerpc/64s/exception: separate pseries and powernv mce delivery paths powerpc/64s/exception: machine check windup restore cfar for host delivery powerpc/64s/exception: fix machine check early should not set AMR powerpc/64s/exception: machine check restructure handler to be more regular powerpc/64s/exception: simplify machine check early path powerpc/64s/exceptions: machine check move unrecoverable handling out of line powerpc/64s/exception: untangle early machine check handler powerpc/64s/exception: machine check improve branch labels powerpc/64s/exception: add missing branch to self after RFI arch/powerpc/include/asm/exception-64s.h | 609 +------- arch/powerpc/include/asm/head-64.h | 204 +-- arch/powerpc/include/asm/paca.h | 2 + arch/powerpc/kernel/asm-offsets.c | 2 + arch/powerpc/kernel/exceptions-64s.S | 1764 ++++++++++++++-------- arch/powerpc/kernel/tm.S | 4 +- arch/powerpc/xmon/xmon.c | 2 + 7 files changed, 1161 insertions(+), 1426 deletions(-) -- 2.20.1