@@ -69,6 +69,7 @@ SYSCALL_DEF(getpid);
#ifdef TARGET_NR_getppid
SYSCALL_DEF(getppid);
#endif
+SYSCALL_DEF(getsid, ARG_DEC);
#ifdef TARGET_NR_getxpid
SYSCALL_DEF(getxpid);
#endif
@@ -193,6 +194,7 @@ SYSCALL_DEF(semctl, ARG_DEC, ARG_DEC, ARG_DEC, ARG_HEX);
SYSCALL_DEF(semget, ARG_DEC, ARG_DEC, ARG_HEX);
#endif
SYSCALL_DEF(setpgid, ARG_DEC, ARG_DEC);
+SYSCALL_DEF(setsid);
#if !defined(SYSCALL_TABLE) || defined(TARGET_NR_semop)
SYSCALL_DEF(semop, ARG_DEC, ARG_PTR, ARG_DEC);
#endif
@@ -464,6 +464,11 @@ SYSCALL_IMPL(getppid)
}
#endif
+SYSCALL_IMPL(getsid)
+{
+ return get_errno(getsid(arg1));
+}
+
#ifdef TARGET_NR_getxpid
SYSCALL_IMPL(getxpid)
{
@@ -485,6 +490,11 @@ SYSCALL_IMPL(setpgid)
return get_errno(setpgid(arg1, arg2));
}
+SYSCALL_IMPL(setsid)
+{
+ return get_errno(setsid());
+}
+
SYSCALL_IMPL(times)
{
abi_ulong target_buf = arg1;
@@ -4241,8 +4241,6 @@ static abi_long do_syscall1(void *cpu_env, int num, abi_long arg1,
void *p;
switch(num) {
- case TARGET_NR_setsid:
- return get_errno(setsid());
#ifdef TARGET_NR_sigaction
case TARGET_NR_sigaction:
{
@@ -5664,8 +5662,6 @@ static abi_long do_syscall1(void *cpu_env, int num, abi_long arg1,
/* NOTE: the flock constant seems to be the same for every
Linux platform */
return get_errno(safe_flock(arg1, arg2));
- case TARGET_NR_getsid:
- return get_errno(getsid(arg1));
#if defined(TARGET_NR_fdatasync) /* Not on alpha (osf_datasync ?) */
case TARGET_NR_fdatasync:
return get_errno(fdatasync(arg1));
@@ -292,9 +292,6 @@
#ifdef TARGET_NR_getrusage
{ TARGET_NR_getrusage, "getrusage" , NULL, NULL, NULL },
#endif
-#ifdef TARGET_NR_getsid
-{ TARGET_NR_getsid, "getsid" , NULL, NULL, NULL },
-#endif
#ifdef TARGET_NR_getsockname
{ TARGET_NR_getsockname, "getsockname" , NULL, NULL, NULL },
#endif
@@ -1100,9 +1097,6 @@
#ifdef TARGET_NR_set_robust_list
{ TARGET_NR_set_robust_list, "set_robust_list" , NULL, NULL, NULL },
#endif
-#ifdef TARGET_NR_setsid
-{ TARGET_NR_setsid, "setsid" , NULL, NULL, NULL },
-#endif
#ifdef TARGET_NR_setsockopt
{ TARGET_NR_setsockopt, "setsockopt" , NULL, NULL, NULL },
#endif
Signed-off-by: Richard Henderson <richard.henderson@linaro.org> --- linux-user/syscall-defs.h | 2 ++ linux-user/syscall-proc.inc.c | 10 ++++++++++ linux-user/syscall.c | 4 ---- linux-user/strace.list | 6 ------ 4 files changed, 12 insertions(+), 10 deletions(-) -- 2.17.1