qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v3 19/19] linux-user: Split out some process sys


From: Laurent Vivier
Subject: Re: [Qemu-devel] [PATCH v3 19/19] linux-user: Split out some process syscalls
Date: Sun, 12 Aug 2018 00:48:48 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1

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 <address@hidden>
> ---
>  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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]