• Markos Chandras's avatar
    MIPS: scall64-o32: Fix indirect syscall detection · ad61ba23
    Markos Chandras authored
    Commit 4c21b8fd (MIPS: seccomp: Handle indirect system calls (o32))
    added indirect syscall detection for O32 processes running on MIPS64
    but it did not work as expected. The reason is the the scall64-o32
    implementation differs compared to scall32-o32. In the former, the v0
    (syscall number) register contains the absolute syscall number
    (4000 + X) whereas in the latter it contains the relative syscall
    number (X). Fix the code to avoid doing an extra addition, and load
    the v0 register directly to the first argument for syscall_trace_enter.
    Moreover, set the .reorder assembler option in order to have better
    control on this part of the assembly code.
    Signed-off-by: default avatarMarkos Chandras <markos.chandras@imgtec.com>
    Patchwork: http://patchwork.linux-mips.org/patch/7481/
    Cc: <stable@vger.kernel.org> # v3.15+
    Signed-off-by: default avatarJames Hogan <james.hogan@imgtec.com>
    ad61ba23
scall64-o32.S 13.6 KB