aboutsummaryrefslogtreecommitdiff
path: root/linux-user
diff options
context:
space:
mode:
authorpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2008-05-29 13:43:29 +0000
committerpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2008-05-29 13:43:29 +0000
commit63d7651b76a3696b1ef46ec9c0b8a08686034988 (patch)
treeb8b0bf025b0724dee357d16660932792aba5f07b /linux-user
parent9133e39b8473ee118c756b7e9356b0e5dbe6e18d (diff)
Implement clock_nanosleep.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4613 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'linux-user')
-rw-r--r--linux-user/syscall.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index cb4cf11e98..fe97be1c9a 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5560,6 +5560,17 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
break;
}
#endif
+#ifdef TARGET_NR_clock_nanosleep
+ case TARGET_NR_clock_nanosleep:
+ {
+ struct timespec ts;
+ target_to_host_timespec(&ts, arg3);
+ ret = get_errno(clock_nanosleep(arg1, arg2, &ts, arg4 ? &ts : NULL));
+ if (arg4)
+ host_to_target_timespec(arg4, &ts);
+ break;
+ }
+#endif
#if defined(TARGET_NR_set_tid_address) && defined(__NR_set_tid_address)
case TARGET_NR_set_tid_address: