diff options
author | Wesley W. Terpstra <terpstra@debian.org> | 2011-07-12 14:33:23 +0300 |
---|---|---|
committer | Riku Voipio <riku.voipio@linaro.org> | 2011-07-12 14:33:23 +0300 |
commit | 7c2f6157d833cb95b355c7321597bc5a5ac976e4 (patch) | |
tree | 57c8b0a23f30779234919d9bb602be76f480782b | |
parent | 053ebb2726c17af6133cfcc8de2193121a107eb5 (diff) |
mips: missing syscall returns wrong errno
Return -TARGET_ENOSYS instead of -ENOSYS from linux-user/main.c
* Caused strange 'Level 2 synchronization messages' instead of
correctly reporting the syscall was missing.
* Made glibc simply fail instead of using older syscalls
Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
Signed-off-by: Wesley W. Terpstra <terpstra@debian.org>
-rw-r--r-- | linux-user/main.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/linux-user/main.c b/linux-user/main.c index d695610349..e32f987786 100644 --- a/linux-user/main.c +++ b/linux-user/main.c @@ -2080,7 +2080,7 @@ void cpu_loop(CPUMIPSState *env) syscall_num = env->active_tc.gpr[2] - 4000; env->active_tc.PC += 4; if (syscall_num >= sizeof(mips_syscall_args)) { - ret = -ENOSYS; + ret = -TARGET_ENOSYS; } else { int nb_args; abi_ulong sp_reg; |