The patch "MIPS: kernel: scall: Always run the seccomp syscall filters" incorrectly calculates the address of the syscall function and instead attempts a load from the offset of the syscall being invoked into the table. This completely trashes all n64 userland syscalls. Fix the address calculation. Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx> Cc: Markos Chandras <markos.chandras@xxxxxxxxxx> --- Markos: could you please test all 3 ABIs you modified? The n64 one at least has clearly not been tested. --- arch/mips/kernel/scall64-64.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/mips/kernel/scall64-64.S b/arch/mips/kernel/scall64-64.S index 59e754e..ffab10a2 100644 --- a/arch/mips/kernel/scall64-64.S +++ b/arch/mips/kernel/scall64-64.S @@ -59,7 +59,7 @@ syscall_common: dsll t0, t2, 3 # offset into table dla t2, sys_call_table - daddu t2, t0 + daddu t0, t2 ld t2, (t0) # syscall routine beqz t2, illegal_syscall -- 2.5.3