diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 6fef8181e738656722ebfc3bad4d50531b1e1fbf..3160a9ba06bdada9793fd9450c630cf7308e57a0 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -7592,7 +7592,9 @@ static int do_futex_time64(target_ulong uaddr, int op, int val, target_ulong tim case FUTEX_WAIT_BITSET: if (timeout) { pts = &ts; - target_to_host_timespec64(pts, timeout); + if (target_to_host_timespec64(pts, timeout)) { + return -TARGET_EFAULT; + } } else { pts = NULL; }