proot
proot copied to clipboard
SYSARG_1 and SYSARG_RESULT are the same on ARM and AArch64
And I assume this is a problem on sh4 as well for SYSARG_5
and SYSARG_RESULT
.
This cause the syscall exit handler to get the wrong arg1 value, in particular, for PR_getsockname
. This causes the socket03 test to fail.
A similar issue exists on x86 between SYSARG_NUM
and SYSARG_RESULT
but the user_regs_struct
have a orig_eax
/orig_rax
there that stored the old value.
@yuyichao is this fixed with the latest v5.3.0 release?
The linked PR worked around this for the specific case. I didn’t see any built in use that can cause problem but I also don’t think there’s a generic solution atm.
Hmm, okay. I'll leave this open for now then.