[PATCH 00/17] powerpc/64s: tidy and gasify exception handler code, round 1
Nicholas Piggin
npiggin at gmail.com
Tue Feb 5 01:18:11 AEDT 2019
My previous big patch was received about as well as can be expected.
That is to say I'll assume everybody loved it, so we have to get there
a bit more incrementally.
This first round of patches was verified each patch (with several
configs) to not change any generated code, to make a small step to
improving things.
The end result is that head-64.h is only used for fixed section
layout code, exeption-64s.h is only used for some paca layout and
speculation control sequences, and exception-64s.S contains all the
actual code for interrupt handlers in a bit nicer form.
There is quite a way to go yet, but hopefully this is a improvement
already, and the good thing about generated code not changing with
this series is that backports are easy to verify. Once we start code
changes, we'll want to minimise the number of releases they are
spread over.
Thanks,
Nick
Nicholas Piggin (17):
powerpc/64s/exception: fix some 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: 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: 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
arch/powerpc/include/asm/exception-64s.h | 585 +-------------
arch/powerpc/include/asm/head-64.h | 204 +----
arch/powerpc/kernel/exceptions-64s.S | 932 ++++++++++++++++++++---
3 files changed, 822 insertions(+), 899 deletions(-)
--
2.18.0
More information about the Linuxppc-dev
mailing list