aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorAleksa Sarai <cyphar@cyphar.com>2019-10-01 11:10:53 +1000
committerChristian Brauner <christian.brauner@ubuntu.com>2019-10-01 15:45:10 +0200
commitf14c234b4bc5184fd40d9a47830e5b32c3b36d49 (patch)
tree03dd3b1cb5035fa6cec8389cf10ea30ddd1ec3e3 /include
parentlib: introduce copy_struct_from_user() helper (diff)
downloadlinux-dev-f14c234b4bc5184fd40d9a47830e5b32c3b36d49.tar.xz
linux-dev-f14c234b4bc5184fd40d9a47830e5b32c3b36d49.zip
clone3: switch to copy_struct_from_user()
Switch clone3() syscall from it's own copying struct clone_args from userspace to the new dedicated copy_struct_from_user() helper. The change is very straightforward, and helps unify the syscall interface for struct-from-userspace syscalls. Additionally, explicitly define CLONE_ARGS_SIZE_VER0 to match the other users of the struct-extension pattern. Signed-off-by: Aleksa Sarai <cyphar@cyphar.com> Reviewed-by: Kees Cook <keescook@chromium.org> Reviewed-by: Christian Brauner <christian.brauner@ubuntu.com> [christian.brauner@ubuntu.com: improve commit message] Link: https://lore.kernel.org/r/20191001011055.19283-3-cyphar@cyphar.com Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Diffstat (limited to 'include')
-rw-r--r--include/uapi/linux/sched.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/uapi/linux/sched.h b/include/uapi/linux/sched.h
index b3105ac1381a..0945805982b4 100644
--- a/include/uapi/linux/sched.h
+++ b/include/uapi/linux/sched.h
@@ -47,6 +47,8 @@ struct clone_args {
__aligned_u64 tls;
};
+#define CLONE_ARGS_SIZE_VER0 64 /* sizeof first published struct */
+
/*
* Scheduling policies
*/