From be66dbc7a7ae429b393dd1dda5749814897a63ad Mon Sep 17 00:00:00 2001 From: Christian Brauner Date: Sat, 16 Nov 2019 12:41:14 +0100 Subject: [PATCH] clone.2: Use pid_t for clone3() {child,parent}_tid Advertise to userspace that they should use proper pid_t types for arguments returning a pid. The kernel-internal struct kernel_clone_args currently uses int as type and since POSIX mandates that pid_t is a signed integer type and glibc and friends use int this is not an issue. After the merge window for v5.5 closes we can switch struct kernel_clone_args over to using pid_t as well without any danger in regressing current userspace. Also note, that the new set tid feature which will be merged for v5.5 uses pid_t types as well. Signed-off-by: Christian Brauner Signed-off-by: Michael Kerrisk --- man2/clone.2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/man2/clone.2 b/man2/clone.2 index faff2ada6..bf2d7c731 100644 --- a/man2/clone.2 +++ b/man2/clone.2 @@ -183,9 +183,9 @@ is a structure of the following form: struct clone_args { u64 flags; /* Flags bit mask */ u64 pidfd; /* Where to store PID file descriptor - (\fIint *\fP) */ + (\fIpid_t *\fP) */ u64 child_tid; /* Where to store child TID, - in child's memory (\fIint *\fP) */ + in child's memory (\fIpid_t *\fP) */ u64 parent_tid; /* Where to store child TID, in parent's memory (\fIint *\fP) */ u64 exit_signal; /* Signal to deliver to parent on