Le 12/06/2018 à 02:51, Richard Henderson a écrit : > This includes clone, getgroups, gettid, setfsgid, setfsuid, > setgroups, setsid, setuid, fork, getegid, getegid32, geteuid, > geteuid32, getgid, getgid32, getgroups32, getpgrp, getpid, > getppid, getresgid, getresgid32, getresuid, getresuid32, > getuid, getuid32, getxgid, getxpid, getxuid, setfsgid32, > setgsuid32, setgid32, setgroups32, setregid, setregid32, > setresgid, setresgid32, setresuid, setresuid32, setreuid, > setreuid32, setuid32, vfork. > > Signed-off-by: Richard Henderson <richard.hender...@linaro.org> > --- > linux-user/syscall.h | 108 ++++ > linux-user/strace.c | 36 +- > linux-user/syscall.c | 799 ---------------------------- > linux-user/syscall_proc.c | 914 +++++++++++++++++++++++++++++++++ > linux-user/Makefile.objs | 5 +- > linux-user/gen_syscall_list.py | 43 ++ > linux-user/strace.list | 144 ------ > 7 files changed, 1072 insertions(+), 977 deletions(-) > create mode 100644 linux-user/syscall_proc.c > ... > diff --git a/linux-user/gen_syscall_list.py b/linux-user/gen_syscall_list.py > index 4eb83ae9ce..9c28221bdd 100644 > --- a/linux-user/gen_syscall_list.py > +++ b/linux-user/gen_syscall_list.py ... > @@ -43,12 +46,38 @@ unconditional_syscalls = [ > "pwritev", > "read", > "readv", > + "setfsgid", > + "setfsuid", > + "setgid", > + "setgroups", > + "setsid", > + "setuid", > "write", > "writev", > ] > > # These syscalls are only supported by some target or abis. > conditional_syscalls = [ > + "fork", > + "getegid", > + "getegid32", > + "geteuid", > + "geteuid32", > + "getgid", > + "getgid32", > + "getgroups32", > + "getpgrp", > + "getpid", > + "getppid", > + "getresgid", > + "getresgid32", > + "getresuid", > + "getresuid32", > + "getuid", > + "getuid32", > + "getxgid", > + "getxpid", > + "getxuid", > "ipc", > "mmap", > "mmap2"> @@ -60,10 +89,24 @@ conditional_syscalls = [ > "semctl", > "semget", > "semop", > + "setfsgid32", > + "setfsuid32", > + "setgid32", > + "setgroups32", > + "setregid", > + "setregid32", > + "setresgid", > + "setresgid32", > + "setresuid", > + "setresuid32", > + "setreuid", > + "setreuid32", > + "setuid32", > "shmat", > "shmctl", > "shmdt", > "shmget", > + "vfork", > ]
At least the following syscalls are missing in the list: get_thread_area, set_thread_area, set_tid_address, ... Thanks, Laurent