OSDN Git Service

MIPS: Remove nabi_no_regargs
authorPaul Burton <paul.burton@mips.com>
Wed, 1 Aug 2018 20:12:42 +0000 (13:12 -0700)
committerPaul Burton <paul.burton@mips.com>
Wed, 1 Aug 2018 20:20:15 +0000 (13:20 -0700)
commit96a68b14db358c310e1c5cc5229752845192c1fa
tree2ba8dc7a1f0621597b4169ac88743bcd45028292
parent84a7f564fa14bf4713240f614c0b9a18730418fa
MIPS: Remove nabi_no_regargs

Our sigreturn functions make use of a macro named nabi_no_regargs to
declare 8 dummy arguments to a function, forcing the compiler to expect
a pt_regs structure on the stack rather than in argument registers. This
is an ugly hack which unnecessarily causes these sigreturn functions to
need to care about the calling convention of the ABI the kernel is built
for. Although this is abstracted via nabi_no_regargs, it's still ugly &
unnecessary.

Remove nabi_no_regargs & the struct pt_regs argument from sigreturn
functions, and instead use current_pt_regs() to find the struct pt_regs
on the stack, which works cleanly regardless of ABI.

Signed-off-by: Paul Burton <paul.burton@mips.com>
Patchwork: https://patchwork.linux-mips.org/patch/20106/
Cc: James Hogan <jhogan@kernel.org>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: linux-mips@linux-mips.org
arch/mips/include/asm/sim.h
arch/mips/kernel/signal.c
arch/mips/kernel/signal_n32.c
arch/mips/kernel/signal_o32.c