diff options
author | Christophe Leroy <christophe.leroy@c-s.fr> | 2019-04-30 14:39:03 +0200 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2019-05-02 17:20:27 +0200 |
commit | 1a4b739bbb4f8857d1b4feb46d6b3ec72269c111 (patch) | |
tree | 1e2212d55c675e3fefcfd9e5049695a5bcbdfd2e /arch/powerpc/kernel/head_44x.S | |
parent | powerpc/32: implement fast entry for syscalls on non BOOKE (diff) | |
download | linux-1a4b739bbb4f8857d1b4feb46d6b3ec72269c111.tar.xz linux-1a4b739bbb4f8857d1b4feb46d6b3ec72269c111.zip |
powerpc/32: implement fast entry for syscalls on BOOKE
This patch implements a fast entry for syscalls.
Syscalls don't have to preserve non volatile registers except LR.
This patch then implement a fast entry for syscalls, where
volatile registers get clobbered.
As this entry is dedicated to syscall it always sets MSR_EE
and warns in case MSR_EE was previously off
It also assumes that the call is always from user, system calls are
unexpected from kernel.
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/kernel/head_44x.S')
-rw-r--r-- | arch/powerpc/kernel/head_44x.S | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/head_44x.S b/arch/powerpc/kernel/head_44x.S index 0381fdb294a6..f15fba58c744 100644 --- a/arch/powerpc/kernel/head_44x.S +++ b/arch/powerpc/kernel/head_44x.S @@ -285,8 +285,7 @@ interrupt_base: #endif /* System Call Interrupt */ START_EXCEPTION(SystemCall) - NORMAL_EXCEPTION_PROLOG(BOOKE_INTERRUPT_SYSCALL) - EXC_XFER_SYS(0x0c00, DoSyscall) + SYSCALL_ENTRY 0xc00 BOOKE_INTERRUPT_SYSCALL /* Auxiliary Processor Unavailable Interrupt */ EXCEPTION(0x2020, BOOKE_INTERRUPT_AP_UNAVAIL, \ |