[RFC PATCH 00/27] current interrupt series plus scv syscall
Nicholas Piggin
npiggin at gmail.com
Sun Sep 15 11:27:46 AEST 2019
My interrupt entry patches have finally collided with syscall and
interrupt exit patches, so I'll merge the series. Most patches have
been seen already, however there have been a number of small changes
and fixes throughout the series.
The final two patches add support for 'scv' and 'rfscv' instructions.
I'm posting this out now so we can start considering ABI and userspace
support. We have the PPC_FEATURE2_SCV hwcap for this.
Thanks,
Nick
Nicholas Piggin (27):
powerpc/64s/exception: Introduce INT_DEFINE parameter block for code
generation
powerpc/64s/exception: Add GEN_COMMON macro that uses INT_DEFINE
parameters
powerpc/64s/exception: Add GEN_KVM macro that uses INT_DEFINE
parameters
powerpc/64s/exception: Expand EXC_COMMON and EXC_COMMON_ASYNC macros
powerpc/64s/exception: Move all interrupt handlers to new style code
gen macros
powerpc/64s/exception: Remove old INT_ENTRY macro
powerpc/64s/exception: Remove old INT_COMMON macro
powerpc/64s/exception: Remove old INT_KVM_HANDLER
powerpc/64s/exception: Add ISIDE option
powerpc/64s/exception: move real->virt switch into the common handler
powerpc/64s/exception: move soft-mask test to common code
powerpc/64s/exception: move KVM test to common code
powerpc/64s/exception: remove confusing IEARLY option
powerpc/64s/exception: remove the SPR saving patch code macros
powerpc/64s/exception: trim unused arguments from KVMTEST macro
powerpc/64s/exception: hdecrementer avoid touching the stack
powerpc/64s/exception: re-inline some handlers
powerpc/64s/exception: Clean up SRR specifiers
powerpc/64s/exception: add more comments for interrupt handlers
powerpc/64s/exception: only test KVM in SRR interrupts when PR KVM is
supported
powerpc/64s/exception: soft nmi interrupt should not use
ret_from_except
powerpc/64: system call remove non-volatile GPR save optimisation
powerpc/64: system call implement the bulk of the logic in C
powerpc/64s: interrupt return in C
powerpc/64s/exception: remove lite interrupt return
powerpc/64s/exception: treat NIA below __end_interrupts as soft-masked
powerpc/64s: system call support for scv/rfscv instructions
arch/powerpc/include/asm/asm-prototypes.h | 11 -
.../powerpc/include/asm/book3s/64/kup-radix.h | 24 +-
arch/powerpc/include/asm/cputime.h | 24 +
arch/powerpc/include/asm/exception-64s.h | 4 -
arch/powerpc/include/asm/head-64.h | 2 +-
arch/powerpc/include/asm/hw_irq.h | 4 +
arch/powerpc/include/asm/ppc_asm.h | 2 +
arch/powerpc/include/asm/processor.h | 2 +-
arch/powerpc/include/asm/ptrace.h | 3 +
arch/powerpc/include/asm/signal.h | 3 +
arch/powerpc/include/asm/switch_to.h | 11 +
arch/powerpc/include/asm/time.h | 4 +-
arch/powerpc/kernel/Makefile | 3 +-
arch/powerpc/kernel/cpu_setup_power.S | 2 +-
arch/powerpc/kernel/dt_cpu_ftrs.c | 1 +
arch/powerpc/kernel/entry_64.S | 964 ++------
arch/powerpc/kernel/exceptions-64e.S | 254 +-
arch/powerpc/kernel/exceptions-64s.S | 2046 ++++++++++++-----
arch/powerpc/kernel/process.c | 2 +
arch/powerpc/kernel/signal.h | 2 -
arch/powerpc/kernel/syscall_64.c | 422 ++++
arch/powerpc/kernel/syscalls/syscall.tbl | 22 +-
arch/powerpc/kernel/systbl.S | 9 +-
arch/powerpc/kernel/time.c | 9 -
arch/powerpc/kernel/vector.S | 2 +-
arch/powerpc/kvm/book3s_hv_rmhandlers.S | 11 -
arch/powerpc/kvm/book3s_segment.S | 7 -
27 files changed, 2458 insertions(+), 1392 deletions(-)
create mode 100644 arch/powerpc/kernel/syscall_64.c
--
2.23.0
More information about the Linuxppc-dev
mailing list