Message ID | 20200722174612.2917566-3-laurent@vivier.eu |
---|---|
State | New |
Headers | show |
Series | linux-user: fix clock_nanosleep() | expand |
diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 43a6e283961b..f5c4f6b95db4 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -11840,13 +11840,6 @@ static abi_long do_syscall1(void *cpu_env, int num, abi_long arg1, host_to_target_timespec(arg4, &ts); } -#if defined(TARGET_PPC) - /* clock_nanosleep is odd in that it returns positive errno values. - * On PPC, CR0 bit 3 should be set in such a situation. */ - if (ret && ret != -TARGET_ERESTARTSYS) { - ((CPUPPCState *)cpu_env)->crf[0] |= 1; - } -#endif return ret; } #endif
Our safe_clock_nanosleep() returns -1 and updates errno. We don't need to update the CRF bit in syscall.c because it will be updated in ppc/cpu_loop.c as the return value is negative. Signed-off-by: Laurent Vivier <laurent@vivier.eu> --- Notes: v2: new patch, remove the PPC part as ret is < 0, CRF will be updated in cpu_loop.c linux-user/syscall.c | 7 ------- 1 file changed, 7 deletions(-)