diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2019-10-04 13:18:56 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2019-10-04 13:18:56 -0400 |
commit | af0622f6ae416f9ac340d6d632be9879805c294a (patch) | |
tree | 4601536c7954fae49617041ab9c415bb86229677 /kernel | |
parent | 768b47b7a9bca52101ff48081cfcecd3ebc5351a (diff) | |
parent | 78f6face5af344f12f4bd48b32faa6f499a06f36 (diff) |
Merge tag 'for-linus-20191003' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux
Pull clone3/pidfd fixes from Christian Brauner:
"This contains a couple of fixes:
- Fix pidfd selftest compilation (Shuah Kahn)
Due to a false linking instruction in the Makefile compilation for
the pidfd selftests would fail on some systems.
- Fix compilation for glibc on RISC-V systems (Seth Forshee)
In some scenarios linux/uapi/linux/sched.h is included where
__ASSEMBLY__ is defined causing a build failure because struct
clone_args was not guarded by an #ifndef __ASSEMBLY__.
- Add missing clone3() and struct clone_args kernel-doc (Christian Brauner)
clone3() and struct clone_args were missing kernel-docs. (The goal
is to use kernel-doc for any function or type where it's worth it.)
For struct clone_args this also contains a comment about the fact
that it's versioned by size"
* tag 'for-linus-20191003' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux:
sched: add kernel-doc for struct clone_args
fork: add kernel-doc for clone3
selftests: pidfd: Fix undefined reference to pthread_create()
sched: Add __ASSEMBLY__ guards around struct clone_args
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/fork.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/kernel/fork.c b/kernel/fork.c index f9572f416126..bf11cf39579a 100644 --- a/kernel/fork.c +++ b/kernel/fork.c | |||
@@ -2604,6 +2604,17 @@ static bool clone3_args_valid(const struct kernel_clone_args *kargs) | |||
2604 | return true; | 2604 | return true; |
2605 | } | 2605 | } |
2606 | 2606 | ||
2607 | /** | ||
2608 | * clone3 - create a new process with specific properties | ||
2609 | * @uargs: argument structure | ||
2610 | * @size: size of @uargs | ||
2611 | * | ||
2612 | * clone3() is the extensible successor to clone()/clone2(). | ||
2613 | * It takes a struct as argument that is versioned by its size. | ||
2614 | * | ||
2615 | * Return: On success, a positive PID for the child process. | ||
2616 | * On error, a negative errno number. | ||
2617 | */ | ||
2607 | SYSCALL_DEFINE2(clone3, struct clone_args __user *, uargs, size_t, size) | 2618 | SYSCALL_DEFINE2(clone3, struct clone_args __user *, uargs, size_t, size) |
2608 | { | 2619 | { |
2609 | int err; | 2620 | int err; |