Message ID | 20210421224418.143065-1-alx.manpages@gmail.com |
---|---|
State | New |
Headers | show |
Series | [1/3] alloc_hugepages.2, arch_prctl.2, capget.2, clone.2, delete_module.2, execveat.2, exit_group.2, get_robust_list.2, getunwind.2, init_module.2: Add note about the use of syscall(2) | expand |
Hello Alex, On 4/22/21 10:44 AM, Alejandro Colomar wrote: > Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> > --- > man2/alloc_hugepages.2 | 5 +++++ > man2/arch_prctl.2 | 6 ++++++ > man2/capget.2 | 5 +++++ > man2/clone.2 | 6 ++++++ > man2/delete_module.2 | 6 ++++++ > man2/execveat.2 | 6 ++++++ > man2/exit_group.2 | 6 ++++++ > man2/get_robust_list.2 | 5 +++++ > man2/getunwind.2 | 6 ++++++ > man2/init_module.2 | 5 +++++ > 10 files changed, 56 insertions(+) Patch applied. Thanks! Cheers, Michael > diff --git a/man2/alloc_hugepages.2 b/man2/alloc_hugepages.2 > index cc76fc495..47f9da6b0 100644 > --- a/man2/alloc_hugepages.2 > +++ b/man2/alloc_hugepages.2 > @@ -35,6 +35,11 @@ alloc_hugepages, free_hugepages \- allocate or free huge pages > .BI "int syscall(SYS_free_hugepages, void *" addr ); > .\" asmlinkage int sys_free_hugepages(unsigned long addr); > .fi > +.PP > +.IR Note : > +glibc provides no wrappers for these system calls, > +necessitating the use of > +.BR syscall (2). > .SH DESCRIPTION > The system calls > .BR alloc_hugepages () > diff --git a/man2/arch_prctl.2 b/man2/arch_prctl.2 > index 7ae5b350c..982416761 100644 > --- a/man2/arch_prctl.2 > +++ b/man2/arch_prctl.2 > @@ -34,6 +34,12 @@ arch_prctl \- set architecture-specific thread state > .BI "int syscall(SYS_arch_prctl, int " code ", unsigned long " addr ); > .BI "int syscall(SYS_arch_prctl, int " code ", unsigned long *" addr ); > .fi > +.PP > +.IR Note : > +glibc provides no wrapper for > +.BR arch_prctl (), > +necessitating the use of > +.BR syscall (2). > .SH DESCRIPTION > .BR arch_prctl () > sets architecture-specific process or thread state. > diff --git a/man2/capget.2 b/man2/capget.2 > index 9dbc0404c..3ac05106f 100644 > --- a/man2/capget.2 > +++ b/man2/capget.2 > @@ -28,6 +28,11 @@ capget, capset \- set/get capabilities of thread(s) > .BI "int syscall(SYS_capset, cap_user_header_t " hdrp , > .BI " const cap_user_data_t " datap ); > .fi > +.PP > +.IR Note : > +glibc provides no wrappers for these system calls, > +necessitating the use of > +.BR syscall (2). > .SH DESCRIPTION > These two system calls are the raw kernel interface for getting and > setting thread capabilities. > diff --git a/man2/clone.2 b/man2/clone.2 > index f455c97d8..7253091a7 100644 > --- a/man2/clone.2 > +++ b/man2/clone.2 > @@ -63,6 +63,12 @@ clone, __clone2, clone3 \- create a child process > .PP > .BI "long syscall(SYS_clone3, struct clone_args *" cl_args ", size_t " size ); > .fi > +.PP > +.IR Note : > +glibc provides no wrapper for > +.BR clone3 (), > +necessitating the use of > +.BR syscall (2). > .SH DESCRIPTION > These system calls > create a new ("child") process, in a manner similar to > diff --git a/man2/delete_module.2 b/man2/delete_module.2 > index 21c9e9d8d..3b14111c5 100644 > --- a/man2/delete_module.2 > +++ b/man2/delete_module.2 > @@ -33,6 +33,12 @@ delete_module \- unload a kernel module > .PP > .BI "int syscall(SYS_delete_module, const char *" name ", unsigned int " flags ); > .fi > +.PP > +.IR Note : > +glibc provides no wrapper for > +.BR delete_module (), > +necessitating the use of > +.BR syscall (2). > .SH DESCRIPTION > The > .BR delete_module () > diff --git a/man2/execveat.2 b/man2/execveat.2 > index c566f53df..0c97a0eb3 100644 > --- a/man2/execveat.2 > +++ b/man2/execveat.2 > @@ -36,6 +36,12 @@ execveat \- execute program relative to a directory file descriptor > .BI " const char *const " argv "[], const char *const " envp [], > .BI " int " flags ); > .fi > +.PP > +.IR Note : > +glibc provides no wrapper for > +.BR execveat (), > +necessitating the use of > +.BR syscall (2). > .\" FIXME . See https://sourceware.org/bugzilla/show_bug.cgi?id=27364 > .SH DESCRIPTION > .\" commit 51f39a1f0cea1cacf8c787f652f26dfee9611874 > diff --git a/man2/exit_group.2 b/man2/exit_group.2 > index b512927d4..96715d26a 100644 > --- a/man2/exit_group.2 > +++ b/man2/exit_group.2 > @@ -32,6 +32,12 @@ exit_group \- exit all threads in a process > .PP > .BI "noreturn void syscall(SYS_exit_group, int " status ); > .fi > +.PP > +.IR Note : > +glibc provides no wrapper for > +.BR exit_group (), > +necessitating the use of > +.BR syscall (2). > .SH DESCRIPTION > This system call is equivalent to > .BR _exit (2) > diff --git a/man2/get_robust_list.2 b/man2/get_robust_list.2 > index d1b1c59bc..66b27d905 100644 > --- a/man2/get_robust_list.2 > +++ b/man2/get_robust_list.2 > @@ -42,6 +42,11 @@ get_robust_list, set_robust_list \- get/set list of robust futexes > .BI "long syscall(SYS_set_robust_list," > .BI " struct robust_list_head *" head ", size_t " len ); > .fi > +.PP > +.IR Note : > +glibc provides no wrappers for these system calls, > +necessitating the use of > +.BR syscall (2). > .SH DESCRIPTION > These system calls deal with per-thread robust futex lists. > These lists are managed in user space: > diff --git a/man2/getunwind.2 b/man2/getunwind.2 > index 2c44506c7..bf15a82b6 100644 > --- a/man2/getunwind.2 > +++ b/man2/getunwind.2 > @@ -35,6 +35,12 @@ getunwind \- copy the unwind data to caller's buffer > .PP > .BI "long syscall(SYS_getunwind, void " *buf ", size_t " buf_size ); > .fi > +.PP > +.IR Note : > +glibc provides no wrapper for > +.BR getunwind (), > +necessitating the use of > +.BR syscall (2). > .SH DESCRIPTION > .I Note: this system call is obsolete. > .PP > diff --git a/man2/init_module.2 b/man2/init_module.2 > index 13d1b7f0a..aac0c6631 100644 > --- a/man2/init_module.2 > +++ b/man2/init_module.2 > @@ -38,6 +38,11 @@ init_module, finit_module \- load a kernel module > .BI "int syscall(SYS_finit_module, int " fd ", const char *" param_values , > .BI " int " flags ); > .fi > +.PP > +.IR Note : > +glibc provides no wrappers for these system calls, > +necessitating the use of > +.BR syscall (2). > .SH DESCRIPTION > .BR init_module () > loads an ELF image into kernel space, >
diff --git a/man2/alloc_hugepages.2 b/man2/alloc_hugepages.2 index cc76fc495..47f9da6b0 100644 --- a/man2/alloc_hugepages.2 +++ b/man2/alloc_hugepages.2 @@ -35,6 +35,11 @@ alloc_hugepages, free_hugepages \- allocate or free huge pages .BI "int syscall(SYS_free_hugepages, void *" addr ); .\" asmlinkage int sys_free_hugepages(unsigned long addr); .fi +.PP +.IR Note : +glibc provides no wrappers for these system calls, +necessitating the use of +.BR syscall (2). .SH DESCRIPTION The system calls .BR alloc_hugepages () diff --git a/man2/arch_prctl.2 b/man2/arch_prctl.2 index 7ae5b350c..982416761 100644 --- a/man2/arch_prctl.2 +++ b/man2/arch_prctl.2 @@ -34,6 +34,12 @@ arch_prctl \- set architecture-specific thread state .BI "int syscall(SYS_arch_prctl, int " code ", unsigned long " addr ); .BI "int syscall(SYS_arch_prctl, int " code ", unsigned long *" addr ); .fi +.PP +.IR Note : +glibc provides no wrapper for +.BR arch_prctl (), +necessitating the use of +.BR syscall (2). .SH DESCRIPTION .BR arch_prctl () sets architecture-specific process or thread state. diff --git a/man2/capget.2 b/man2/capget.2 index 9dbc0404c..3ac05106f 100644 --- a/man2/capget.2 +++ b/man2/capget.2 @@ -28,6 +28,11 @@ capget, capset \- set/get capabilities of thread(s) .BI "int syscall(SYS_capset, cap_user_header_t " hdrp , .BI " const cap_user_data_t " datap ); .fi +.PP +.IR Note : +glibc provides no wrappers for these system calls, +necessitating the use of +.BR syscall (2). .SH DESCRIPTION These two system calls are the raw kernel interface for getting and setting thread capabilities. diff --git a/man2/clone.2 b/man2/clone.2 index f455c97d8..7253091a7 100644 --- a/man2/clone.2 +++ b/man2/clone.2 @@ -63,6 +63,12 @@ clone, __clone2, clone3 \- create a child process .PP .BI "long syscall(SYS_clone3, struct clone_args *" cl_args ", size_t " size ); .fi +.PP +.IR Note : +glibc provides no wrapper for +.BR clone3 (), +necessitating the use of +.BR syscall (2). .SH DESCRIPTION These system calls create a new ("child") process, in a manner similar to diff --git a/man2/delete_module.2 b/man2/delete_module.2 index 21c9e9d8d..3b14111c5 100644 --- a/man2/delete_module.2 +++ b/man2/delete_module.2 @@ -33,6 +33,12 @@ delete_module \- unload a kernel module .PP .BI "int syscall(SYS_delete_module, const char *" name ", unsigned int " flags ); .fi +.PP +.IR Note : +glibc provides no wrapper for +.BR delete_module (), +necessitating the use of +.BR syscall (2). .SH DESCRIPTION The .BR delete_module () diff --git a/man2/execveat.2 b/man2/execveat.2 index c566f53df..0c97a0eb3 100644 --- a/man2/execveat.2 +++ b/man2/execveat.2 @@ -36,6 +36,12 @@ execveat \- execute program relative to a directory file descriptor .BI " const char *const " argv "[], const char *const " envp [], .BI " int " flags ); .fi +.PP +.IR Note : +glibc provides no wrapper for +.BR execveat (), +necessitating the use of +.BR syscall (2). .\" FIXME . See https://sourceware.org/bugzilla/show_bug.cgi?id=27364 .SH DESCRIPTION .\" commit 51f39a1f0cea1cacf8c787f652f26dfee9611874 diff --git a/man2/exit_group.2 b/man2/exit_group.2 index b512927d4..96715d26a 100644 --- a/man2/exit_group.2 +++ b/man2/exit_group.2 @@ -32,6 +32,12 @@ exit_group \- exit all threads in a process .PP .BI "noreturn void syscall(SYS_exit_group, int " status ); .fi +.PP +.IR Note : +glibc provides no wrapper for +.BR exit_group (), +necessitating the use of +.BR syscall (2). .SH DESCRIPTION This system call is equivalent to .BR _exit (2) diff --git a/man2/get_robust_list.2 b/man2/get_robust_list.2 index d1b1c59bc..66b27d905 100644 --- a/man2/get_robust_list.2 +++ b/man2/get_robust_list.2 @@ -42,6 +42,11 @@ get_robust_list, set_robust_list \- get/set list of robust futexes .BI "long syscall(SYS_set_robust_list," .BI " struct robust_list_head *" head ", size_t " len ); .fi +.PP +.IR Note : +glibc provides no wrappers for these system calls, +necessitating the use of +.BR syscall (2). .SH DESCRIPTION These system calls deal with per-thread robust futex lists. These lists are managed in user space: diff --git a/man2/getunwind.2 b/man2/getunwind.2 index 2c44506c7..bf15a82b6 100644 --- a/man2/getunwind.2 +++ b/man2/getunwind.2 @@ -35,6 +35,12 @@ getunwind \- copy the unwind data to caller's buffer .PP .BI "long syscall(SYS_getunwind, void " *buf ", size_t " buf_size ); .fi +.PP +.IR Note : +glibc provides no wrapper for +.BR getunwind (), +necessitating the use of +.BR syscall (2). .SH DESCRIPTION .I Note: this system call is obsolete. .PP diff --git a/man2/init_module.2 b/man2/init_module.2 index 13d1b7f0a..aac0c6631 100644 --- a/man2/init_module.2 +++ b/man2/init_module.2 @@ -38,6 +38,11 @@ init_module, finit_module \- load a kernel module .BI "int syscall(SYS_finit_module, int " fd ", const char *" param_values , .BI " int " flags ); .fi +.PP +.IR Note : +glibc provides no wrappers for these system calls, +necessitating the use of +.BR syscall (2). .SH DESCRIPTION .BR init_module () loads an ELF image into kernel space,
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com> --- man2/alloc_hugepages.2 | 5 +++++ man2/arch_prctl.2 | 6 ++++++ man2/capget.2 | 5 +++++ man2/clone.2 | 6 ++++++ man2/delete_module.2 | 6 ++++++ man2/execveat.2 | 6 ++++++ man2/exit_group.2 | 6 ++++++ man2/get_robust_list.2 | 5 +++++ man2/getunwind.2 | 6 ++++++ man2/init_module.2 | 5 +++++ 10 files changed, 56 insertions(+)