clone3: switch to copy_struct_from_user()
authorAleksa Sarai <cyphar@cyphar.com>
Tue, 1 Oct 2019 01:10:53 +0000 (11:10 +1000)
committerChristian Brauner <christian.brauner@ubuntu.com>
Tue, 1 Oct 2019 13:45:10 +0000 (15:45 +0200)
commitf14c234b4bc5184fd40d9a47830e5b32c3b36d49
tree03dd3b1cb5035fa6cec8389cf10ea30ddd1ec3e3
parentf5a1a536fa14895ccff4e94e6a5af90901ce86aa
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>
include/uapi/linux/sched.h
kernel/fork.c