OSDN Git Service

powerpc: Change system_call_exception calling convention
authorRohan McLure <rmclure@linux.ibm.com>
Wed, 21 Sep 2022 06:56:00 +0000 (16:56 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 28 Sep 2022 09:22:09 +0000 (19:22 +1000)
commitf8971c627b14040e533768985a99f4fd6ffa420f
treeb13a12041449c8ac129cc0479be77ded55e82f9e
parent8640de0dee49cec50040d9845a2bc96fd15adc9e
powerpc: Change system_call_exception calling convention

Change system_call_exception arguments to pass a pointer to a stack
frame container caller state, as well as the original r0, which
determines the number of the syscall. This has been observed to yield
improved performance to passing them by registers, circumventing the
need to allocate a stack frame.

Signed-off-by: Rohan McLure <rmclure@linux.ibm.com>
Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
[mpe: Retain clearing of high bits of args for compat tasks]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20220921065605.1051927-21-rmclure@linux.ibm.com
arch/powerpc/include/asm/interrupt.h
arch/powerpc/kernel/entry_32.S
arch/powerpc/kernel/interrupt_64.S
arch/powerpc/kernel/syscall.c