summaryrefslogtreecommitdiffstats
path: root/man2/syscalls.2
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:41:07 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:41:07 +0000
commit3af6d22bb3850ab2bac67287e3a3d3b0e32868e5 (patch)
tree3ee7a3ec64525911fa865bb984c86d997d855527 /man2/syscalls.2
parentAdding debian version 6.05.01-1. (diff)
downloadmanpages-3af6d22bb3850ab2bac67287e3a3d3b0e32868e5.tar.xz
manpages-3af6d22bb3850ab2bac67287e3a3d3b0e32868e5.zip
Merging upstream version 6.7.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'man2/syscalls.2')
-rw-r--r--man2/syscalls.239
1 files changed, 20 insertions, 19 deletions
diff --git a/man2/syscalls.2 b/man2/syscalls.2
index 1011c14..09535aa 100644
--- a/man2/syscalls.2
+++ b/man2/syscalls.2
@@ -9,7 +9,7 @@
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
-.TH syscalls 2 2023-07-30 "Linux man-pages 6.05.01"
+.TH syscalls 2 2024-02-18 "Linux man-pages 6.7"
.SH NAME
syscalls \- Linux system calls
.SH SYNOPSIS
@@ -29,7 +29,7 @@ as the name of the system call that it invokes.
For example, glibc contains a function
.BR chdir ()
which invokes the underlying "chdir" system call.
-.PP
+.P
Often the glibc wrapper function is quite thin, doing little work
other than copying arguments to the right registers
before invoking the system call,
@@ -49,7 +49,7 @@ the wrapper function negates the returned error number
(to make it positive), copies it to
.IR errno ,
and returns \-1 to the caller of the wrapper.
-.PP
+.P
Sometimes, however, the wrapper function does some extra work
before invoking the system call.
For example, nowadays there are (for reasons described below) two
@@ -76,8 +76,8 @@ the system call appeared in Linux 1.0 or earlier.
Where a system call is marked "1.2"
this means the system call probably appeared in a Linux 1.1.x kernel version,
and first appeared in a stable kernel with 1.2.
-(Development of the 1.2 kernel was initiated from a branch of kernel
-1.0.6 via the 1.1.x unstable kernel series.)
+(Development of the Linux 1.2 kernel was initiated from a branch of
+Linux 1.0.6 via the Linux 1.1.x unstable kernel series.)
.IP \[bu]
Where a system call is marked "2.0"
this means the system call probably appeared in a Linux 1.3.x kernel version,
@@ -98,7 +98,7 @@ via the Linux 1.3.x unstable kernel series.)
Where a system call is marked "2.2"
this means the system call probably appeared in a Linux 2.1.x kernel version,
and first appeared in a stable kernel with Linux 2.2.0.
-(Development of the Linux 2.2 kernel was initiated from a branch of kernel
+(Development of the Linux 2.2 kernel was initiated from a branch of
Linux 2.0.21 via the Linux 2.1.x unstable kernel series.)
.IP \[bu]
Where a system call is marked "2.4"
@@ -120,7 +120,8 @@ is shown.
This convention continues with the Linux 3.x kernel series,
which followed on from Linux 2.6.39; and the Linux 4.x kernel series,
which followed on from Linux 3.19; and the Linux 5.x kernel series,
-which followed on from Linux 4.20.
+which followed on from Linux 4.20; and the Linux 6.x kernel series,
+which followed on from Linux 5.19.
.IP \[bu]
In some cases, a system call was added to a stable kernel
series after it branched from the previous stable kernel
@@ -129,19 +130,19 @@ For example some system calls that appeared in Linux 2.6.x were also backported
into a Linux 2.4.x release after Linux 2.4.15.
When this is so, the version where the system call appeared
in both of the major kernel series is listed.
-.PP
+.P
The list of system calls that are available as at Linux 5.14
(or in a few cases only on older kernels) is as follows:
+.P
.\"
.\" Looking at scripts/checksyscalls.sh in the kernel source is
.\" instructive about x86 specifics.
.\"
.TS
-l2 le l
----
-l l l.
-\fBSystem call\fP \fBKernel\fP \fBNotes\fP
-
+Lb Lb Lb
+L2 L L.
+System call Kernel Notes
+_
\fB_llseek\fP(2) 1.2
\fB_newselect\fP(2) 2.0
\fB_sysctl\fP(2) 2.0 Removed in 5.5
@@ -832,13 +833,13 @@ T}
.\" 5a0015d62668e64c8b6e02e360fbbea121bfd5e6
\fBxtensa\fP(2) 2.6.13 Xtensa only
.TE
-.PP
+.P
On many platforms, including x86-32, socket calls are all multiplexed
(via glibc wrapper functions) through
.BR socketcall (2)
and similarly System\ V IPC calls are multiplexed through
.BR ipc (2).
-.PP
+.P
Although slots are reserved for them in the system call table,
the following system calls are not implemented in the standard kernel:
.BR afs_syscall (2), \" __NR_afs_syscall is 53 on Linux 2.6.22/i386
@@ -883,7 +884,7 @@ and
.BR putpmsg (2)
calls are for kernels patched to support STREAMS,
and may never be in the standard kernel.
-.PP
+.P
There was briefly
.BR set_zone_reclaim (2),
added in Linux 2.6.13, and removed in Linux 2.6.16;
@@ -967,7 +968,7 @@ proprietary operating-system emulation,
such as sparc, sparc64, and alpha,
there are many additional system calls; mips64 also contains a full
set of 32-bit system calls.
-.PP
+.P
Over time, changes to the interfaces of some system calls have been
necessary.
One reason for such changes was the need to increase the size of
@@ -984,7 +985,7 @@ details such as the size of their arguments.
the glibc wrapper functions do some work to ensure that the right
system call is invoked, and that ABI compatibility is
preserved for old binaries.)
-Examples of systems calls that exist in multiple versions are
+Examples of system calls that exist in multiple versions are
the following:
.IP \[bu] 3
By now there are three different versions of
@@ -1111,7 +1112,7 @@ and similarly
.IR __NR_mmap2 .
s390x is the only 64-bit architecture that has
.IR old_mmap ().
-.\" .PP
+.\" .P
.\" Two system call numbers,
.\" .IR __NR__llseek
.\" and