The introduction of clone3 syscall accidentally broke CLONE_PIDFD support in traditional clone syscall on compat x86 and those architectures that use do_fork to implement clone syscall. This bug was found by strace test suite.
Showing the changes to include/linux (1 of 3 files). Show all
Unified · Split
| @@ -89,6 +89,7 @@ extern void exit_files(struct task_struct *); · 88 unmodified lines | ||
| 89 | 89 | extern void exit_itimers(struct signal_struct *); |
| 90 | 90 | |
| 91 | 91 | extern long _do_fork(struct kernel_clone_args *kargs); |
| 92 | +extern bool legacy_clone_args_valid(const struct kernel_clone_args *kargs); | |
| 92 | 93 | extern long do_fork(unsigned long, unsigned long, unsigned long, int __user *, int __user *); |
| 93 | 94 | struct task_struct *fork_idle(int); |
| 94 | 95 | struct mm_struct *copy_init_mm(void); |