[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 107/108] linux-user: Split out setns, unshare
From: |
Richard Henderson |
Subject: |
[Qemu-devel] [PATCH v2 107/108] linux-user: Split out setns, unshare |
Date: |
Sat, 9 Jun 2018 17:02:19 -1000 |
All targets define both of these; remove the ifdefs.
Signed-off-by: Richard Henderson <address@hidden>
---
linux-user/syscall.c | 32 ++++++++++++++++++++------------
1 file changed, 20 insertions(+), 12 deletions(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index d15f994039..7a94a0b0e9 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -11820,6 +11820,13 @@ IMPL(setitimer)
return ret;
}
+#ifdef CONFIG_SETNS
+IMPL(setns)
+{
+ return get_errno(setns(arg1, arg2));
+}
+#endif
+
IMPL(setpgid)
{
return get_errno(setpgid(arg1, arg2));
@@ -12984,6 +12991,13 @@ IMPL(unlinkat)
return ret;
}
+#ifdef CONFIG_SETNS
+IMPL(unshare)
+{
+ return get_errno(unshare(arg1));
+}
+#endif
+
#ifdef TARGET_NR_utime
IMPL(utime)
{
@@ -13200,23 +13214,11 @@ static abi_long do_syscall1(void *cpu_env, unsigned
num, abi_long arg1,
abi_long arg5, abi_long arg6, abi_long arg7,
abi_long arg8)
{
- CPUState *cpu __attribute__((unused)) = ENV_GET_CPU(cpu_env);
- abi_long ret;
-
switch(num) {
-#if defined(TARGET_NR_setns) && defined(CONFIG_SETNS)
- case TARGET_NR_setns:
- return get_errno(setns(arg1, arg2));
-#endif
-#if defined(TARGET_NR_unshare) && defined(CONFIG_SETNS)
- case TARGET_NR_unshare:
- return get_errno(unshare(arg1));
-#endif
default:
gemu_log("qemu: Unsupported syscall: %d\n", num);
return -TARGET_ENOSYS;
}
- return ret;
}
/* The default action for a syscall not listed in syscall_table is to
@@ -13770,6 +13772,9 @@ static impl_fn *syscall_table(unsigned num)
#endif
SYSCALL(sethostname);
SYSCALL(setitimer);
+#ifdef CONFIG_SETNS
+ SYSCALL(setns);
+#endif
SYSCALL(setpgid);
SYSCALL(setpriority);
SYSCALL(setregid);
@@ -13916,6 +13921,9 @@ static impl_fn *syscall_table(unsigned num)
SYSCALL(unlink);
#endif
SYSCALL(unlinkat);
+#ifdef CONFIG_SETNS
+ SYSCALL(unshare);
+#endif
#ifdef TARGET_NR_utime
SYSCALL(utime);
#endif
--
2.17.1
- [Qemu-devel] [PATCH v2 097/108] linux-user: Split out eventfd, eventfd2, (continued)
- [Qemu-devel] [PATCH v2 097/108] linux-user: Split out eventfd, eventfd2, Richard Henderson, 2018/06/09
- [Qemu-devel] [PATCH v2 099/108] linux-user: Split out signalfd, signalfd4, Richard Henderson, 2018/06/09
- [Qemu-devel] [PATCH v2 098/108] linux-user: Split out fallocate, sync_file_range/2, Richard Henderson, 2018/06/09
- [Qemu-devel] [PATCH v2 100/108] linux-user: Split out epoll syscalls, Richard Henderson, 2018/06/09
- [Qemu-devel] [PATCH v2 101/108] linux-user: Split out prlimit64, Richard Henderson, 2018/06/09
- [Qemu-devel] [PATCH v2 102/108] linux-user: Split out atomic_barrier, gethostname, Richard Henderson, 2018/06/09
- [Qemu-devel] [PATCH v2 103/108] linux-user: Split out atomic_cmpxchg_32, Richard Henderson, 2018/06/09
- [Qemu-devel] [PATCH v2 104/108] linux-user: Split out timer syscalls, Richard Henderson, 2018/06/09
- [Qemu-devel] [PATCH v2 105/108] linux-user: Split out timerfd syscalls, Richard Henderson, 2018/06/09
- [Qemu-devel] [PATCH v2 106/108] linux-user: Split out ioprio_get, ioprio_set, kcmp, Richard Henderson, 2018/06/09
- [Qemu-devel] [PATCH v2 107/108] linux-user: Split out setns, unshare,
Richard Henderson <=
- [Qemu-devel] [PATCH v2 108/108] linux-user: Fold away do_syscall1, Richard Henderson, 2018/06/09
- Re: [Qemu-devel] [PATCH v2 000/108] linux-user: Split do_syscall, no-reply, 2018/06/10
- Re: [Qemu-devel] [PATCH v2 000/108] linux-user: Split do_syscall, no-reply, 2018/06/10
- Re: [Qemu-devel] [PATCH v2 000/108] linux-user: Split do_syscall, Peter Maydell, 2018/06/10
- Re: [Qemu-devel] [PATCH v2 000/108] linux-user: Split do_syscall, Richard Henderson, 2018/06/10