Hi Alex, On 4/4/21 1:58 PM, Alejandro Colomar wrote: > > v5: > - ffix 29/35, 32/35, and 35/35. The rest are identical to v4. > > > Alejandro Colomar (35): > system_data_types.7: Add 'struct sockaddr' > sockaddr.3: New link to system_data_types(7) > system_data_types.7: Add 'socklen_t' > socklen_t.3: New link to system_data_types(7) > access.2: Use syscall(SYS_...); for system calls without a wrapper > add_key.2: Remove unused include > alloc_hugepages.2: Use syscall(SYS_...); for system calls without a > wrapper > arch_prctl.2: Use syscall(SYS_...); for system calls without a wrapper > arch_prctl.2: SYNOPSIS: Remove unused includes > capget.2: Use syscall(SYS_...); for system calls without a wrapper > clone.2: Use syscall(SYS_...); for system calls without a wrapper > delete_module.2: Add missing include > dup.2: SYNOPSIS: Use consistent comments through pages > execveat.2: Use syscall(SYS_...); for system calls without a wrapper > exit_group.2: Use 'noreturn' in prototypes > exit_group.2: Use syscall(SYS_...); for system calls without a wrapper > fanotify_init.2: Add comment: why more than one include is needed > fcntl.2: Remove unused include > futex.2: Use syscall(SYS_...); for system calls without a wrapper > futimesat.2: ffix > getdents.2: Use syscall(SYS_...); for system calls without a wrapper > getpriority.2: Remove unused include > getrlimit.2, getrusage.2: Remove unused include > getunwind.2: Use syscall(SYS_...); for system calls without a wrapper > get_robust_list.2: Use syscall(SYS_...); for system calls without a > wrapper > delete_module.2: Use syscall(SYS_...); for system calls without a > wrapper > init_module.2: Use syscall(SYS_...); for system calls without a > wrapper > io_cancel.2: Use syscall(SYS_...); for system calls without a wrapper > ioctl_fat.2: Make clear why is each header exactly needed. > ioctl_fat.2: ffix > ioctl_ficlonerange.2: Make clear why is each header exactly needed. > ioctl_fideduperange.2: Make clear why exactly is each header needed > ioctl_fslabel.2: ffix > ioctl_fslabel.2: Make clear why exactly is each header needed > ioctl_getfsmap.2: Make clear why exactly is each header needed So, I think I'm okay with the syscall() changes in the SYNOPSIS. It might just take me a moment to get used to them. However, I do wonder if it is worth retaining a comment in the SYSNOPSIS, something like: SYNOPSIS #include <asm/prctl.h> /* Definition of ARCH_* constants */ #include <sys/syscall.h> /* Definition of SYS_* constants */ #include <unistd.h> int syscall(SYS_arch_prctl, int code, unsigned long addr); int syscall(SYS_arch_prctl, int code, unsigned long *addr); Note: glibc provides no wrapper for arch_prctl(), necessitating the use of syscall(2). Without something like this, the reader may be puzzled at the use of syscall(). What do you think? Thanks, Michael -- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ Linux/UNIX System Programming Training: http://man7.org/training/