aboutsummaryrefslogtreecommitdiff
path: root/linux-user
diff options
context:
space:
mode:
authorRichard Henderson <rth@twiddle.net>2012-06-01 18:48:39 -0700
committerRichard Henderson <rth@twiddle.net>2012-08-04 09:37:49 -0700
commite7ea6cbefdddd63851d3e9b7bc1f82c2c2985756 (patch)
treef096c642456b5b5057d92c1742833d29e0ce8ad8 /linux-user
parenta5e7ee467c6b8cdfc0fc0f1958d5b0f479d76aaf (diff)
linux-user: Translate pipe2 flags; add to strace
Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'linux-user')
-rw-r--r--linux-user/strace.list3
-rw-r--r--linux-user/syscall.c3
2 files changed, 5 insertions, 1 deletions
diff --git a/linux-user/strace.list b/linux-user/strace.list
index a7eeaef99f..af3c6a0cce 100644
--- a/linux-user/strace.list
+++ b/linux-user/strace.list
@@ -1527,3 +1527,6 @@
#ifdef TARGET_NR_sync_file_range2
{ TARGET_NR_sync_file_range2, "sync_file_range2", NULL, NULL, NULL },
#endif
+#ifdef TARGET_NR_pipe2
+{ TARGET_NR_pipe2, "pipe2", NULL, NULL, NULL },
+#endif
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 7d149a1570..07823e176b 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5595,7 +5595,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
break;
#ifdef TARGET_NR_pipe2
case TARGET_NR_pipe2:
- ret = do_pipe(cpu_env, arg1, arg2, 1);
+ ret = do_pipe(cpu_env, arg1,
+ target_to_host_bitmask(arg2, fcntl_flags_tbl), 1);
break;
#endif
case TARGET_NR_times: