1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
|
==================== Changes in man-pages-5.06 ====================
Released: 2020-04-11, Munich
Contributors
------------
The following people contributed patches/fixes or (noted in brackets
in the changelog below) reports, notes, and ideas that have been
incorporated in changes in this release:
Alejandro Colomar <colomar.6.4.3@gmail.com>
Aleksa Sarai <cyphar@cyphar.com>
Alexander Miller <alex.miller@gmx.de>
Andrea Arcangeli <aarcange@redhat.com>
André Almeida <andrealmeid@collabora.com>
Andrei Vagin <avagin@gmail.com>
Andrew Micallef <andrew.micallef@live.com.au>
Bart Van Assche <bvanassche@acm.org>
Benjamin Peterson <benjamin@python.org>
Bjarni Ingi Gislason <bjarniig@rhi.hi.is>
Christian Brauner <christian@brauner.io>
devi R.K <devi.feb27@gmail.com>
Dmitry Safonov <dima@arista.com>
Eric Biggers <ebiggers@google.com>
Eric Dumazet <eric.dumazet@gmail.com>
Eric Rannaud <e@nanocritical.com>
Eugene Syromyatnikov <evgsyr@gmail.com>
Heinrich Schuchardt <xypron.glpk@gmx.de>
Helge Deller <deller@gmx.de>
Jakub Wilk <jwilk@jwilk.net>
Jorgen Hansen <jhansen@vmware.com>
Julia Suvorova <jusual@mail.ru>
Keno Fischer <keno@juliacomputing.com>
Krzysztof Małysa <varqox@gmail.com>
Marc Lehmann <debian-reportbug@plan9.de>
Matthew Bobrowski <mbobrowski@mbobrowski.org>
Michael Galassi <michael@galassi.us>
Michael Kerrisk <mtk.manpages@gmail.com>
Michal Hocko <mhocko@kernel.org>
Mike Christie <mchristi@redhat.com>
Mike Frysinger <vapier@gentoo.org>
Pablo M. Ronchi <pmronchi@yahoo.com.ar>
Ricardo Biehl Pasquali <pasqualirb@gmail.com>
Stefan Hajnoczi <stefanha@redhat.com>
Stefano Garzarella <sgarzare@redhat.com>
Thomas Gleixner <tglx@linutronix.de>
Walter Harms <wharms@bfs.de>
Zack Weinberg <zackw@panix.com>
Apologies if I missed anyone!
New and rewritten pages
-----------------------
openat2.2
Aleksa Sarai [Michael Kerrisk]
Document new openat2(2) syscall
pidfd_getfd.2
Michael Kerrisk [Christian Brauner]
New manual page documenting the pidfd_getfd() system call
select.2
Michael Kerrisk
Rewrite DESCRIPTION
Improve structure and readability, at the same time incorporating
text and details that were formerly in select_tut(2). Also
move a few details in other parts of the page into DESCRIPTION.
Michael Kerrisk
Consolidate the discussion of pselect into a headed subsection
Michael Kerrisk
Consolidate historical glibc pselect() details under one subhead
Michael Kerrisk
Consolidate info on usleep() emulation in one place
Michael Kerrisk
Place the discussion of the self-pipe technique in a headed subsection
Michael Kerrisk
Note that FD_SET() and FD_CLR() do not return errors
Michael Kerrisk
Remove details of historical #include requirements
The POSIX situation has been the norm for a long time now,
and including ancient details overcomplicates the page.
Michael Kerrisk
Remove some ancient information about pre-POSIX types for 'timeout'
select_tut.2
Michael Kerrisk
Eliminate duplication of info across select_tut.2 and select2
There was a lot of a duplication of info in SYNOPSIS, DESCRIPTION
RETURN VALUE, and SEE ALSO. Move all of the info to one place:
the select(2) page.
sysvipc.7
Michael Kerrisk
Rewrite this page as just a summary of the System V IPC APIs
All of the other details in this page have by now been moved into
the relevant *ctl(2) pages.
time_namespaces.7
Michael Kerrisk [Andrei Vagin, Dmitry Safonov, Thomas Gleixner]
New page documenting time namespaces
Newly documented interfaces in existing pages
---------------------------------------------
arch_prctl.2
Keno Fischer
Add ARCH_SET_CPUID subcommand
clock_getres.2
Benjamin Peterson
Document CLOCK_TAI
Michael Kerrisk
Add CLOCK_REALTIME_ALARM and CLOCK_BOOTTIME_ALARM
prctl.2
Mike Christie [Michal Hocko, Michael Kerrisk, Bart Van Assche]
Document PR_SETIO_FLUSHER/GET_IO_FLUSHER
setns.2
Michael Kerrisk
Document CLONE_NEWTIME
statx.2
Eric Biggers
Document STATX_ATTR_VERITY
unshare.2
Michael Kerrisk
Document CLONE_NEWTIME
socket.7
Ricardo Biehl Pasquali, Michael Kerrisk
Add description of SO_SELECT_ERR_QUEUE
Alejandro Colomar [Michael Kerrisk]
Document SO_TIMESTAMPNS
Global changes
--------------
Various pages
Michael Kerrisk
Remove a few mentions of the ancient "Linux libc"
Various pages
Michael Kerrisk
Global formatting fix: disfavor nonstandard .TP indents
In many cases, these don't improve readability, and (when stacked)
they sometimes have the side effect of sometimes forcing text
to be justified within a narrow column range.
Various pages
Michael Kerrisk [Christian Brauner]
Fix clumsy wording around "nonnegative file descriptors"
Changes to individual pages
---------------------------
clock_getres.2
Helge Deller [Michael Kerrisk]
Consecutive calls for CLOCK_MONOTONIC may return same value
Consecutive calls to clock_gettime(CLOCK_MONOTONIC) are guaranteed
to return MONOTONIC values, which means that they either return
the *SAME* time value like the last call, or a later (higher) time
value.
Eric Rannaud
Dynamic POSIX clock devices can return other errors
Michael Kerrisk
Improve description of CPU-time clocks
Michael Kerrisk
Add an example program
Michael Kerrisk
CLOCK_REALTIME_COARSE is not settable
Michael Kerrisk
Note that CPU-time clocks are not settable.
Explicitly note that CLOCK_PROCESS_CPUTIME_ID and
CLOCK_PROCESS_CPUTIME_ID are not settable.
Michael Kerrisk
Clarify that CLOCK_TAI is nonsettable
Michael Kerrisk
Clarify that CLOCK_MONOTONIC is system-wide
Michael Kerrisk
ERRORS: add EINVAL for attempt to set a nonsettable clock
Michael Kerrisk
Move text in BUGS to NOTES
The fact that CLOCK_PROCESS_CPUTIME_ID and
CLOCK_PROCESS_CPUTIME_ID are not settable isn't a bug,
since POSIX does allow the possibility that these clocks
are not settable.
Michael Kerrisk
SEE ALSO: add time_namespaces(7)
clock_nanosleep.2
Michael Kerrisk
clock_nanosleep() can also sleep against CLOCK_TAI
Michael Kerrisk
clock_nanosleep() also supports CLOCK_BOOTTIME
Presumably (and from a quick glance at the source code)
since Linux 2.6.39, when CLOCK_BOOTTIME was introduced.
clock_nanosleep.2
timer_create.2
timerfd_create.2
Michael Kerrisk
Add various missing errors
Mostly verified by testing and reading the code.
There is unfortunately quite a bit of inconsistency across API~s:
clock_gettime clock_settime clock_nanosleep timer_create timerfd_create
CLOCK_BOOTTIME y n (EINVAL) y y y
CLOCK_BOOTTIME_ALARM y n (EINVAL) y [1] y [1] y [1]
CLOCK_MONOTONIC y n (EINVAL) y y y
CLOCK_MONOTONIC_COARSE y n (EINVAL) n (ENOTSUP) n (ENOTSUP) n (EINVAL)
CLOCK_MONOTONIC_RAW y n (EINVAL) n (ENOTSUP) n (ENOTSUP) n (EINVAL)
CLOCK_REALTIME y y y y y
CLOCK_REALTIME_ALARM y n (EINVAL) y [1] y [1] y [1]
CLOCK_REALTIME_COARSE y n (EINVAL) n (ENOTSUP) n (ENOTSUP) n (EINVAL)
CLOCK_TAI y n (EINVAL) y y n (EINVAL)
CLOCK_PROCESS_CPUTIME_ID y n (EINVAL) y y n (EINVAL)
CLOCK_THREAD_CPUTIME_ID y n (EINVAL) n (EINVAL [2]) y n (EINVAL)
pthread_getcpuclockid() y n (EINVAL) y y n (EINVAL)
[1] The caller must have CAP_WAKE_ALARM, or the error EPERM results.
[2] This error is generated in the glibc wrapper.
connect.2
Michael Kerrisk [Eric Dumazet]
Update the details on AF_UNSPEC
Update the details on AF_UNSPEC and circumstances in which
socket can be reconnected.
dup.2
Michael Kerrisk
SEE ALSO: add pidfd_getfd(2)
epoll_ctl.2
Michael Kerrisk
Various minor additions and clarifications
epoll_wait.2
Michael Kerrisk
A few minor additions and rewrites
execve.2
Michael Kerrisk
Add a subhead for the discussion of effect on process attributes
Michael Kerrisk
Explicitly note that argv[argc] == NULL in the new program
Michael Kerrisk
ERRORS: ENOENT does not occur for missing shared libraries
See http://sourceware.org/bugzilla/show_bug.cgi?id=12241.
_exit.2
Michael Kerrisk
Clarify that raw _exit() system call terminates only the calling thread
inotify_add_watch.2
Michael Kerrisk
EXAMPLE: add reference to example in inotify(7)
io_submit.2
Julia Suvorova
Add IOCB_CMD_POLL opcode
lseek.2
Michael Kerrisk
ERRORS: ENXIO can also occur SEEK_DATA in middle of hole at end of file
madvise.2
Michael Kerrisk [Andrea Arcangeli]
Incorporate some (ancient) comments about MADV_HUGEPAGE
Back in 2011, a mail from Andrea Arcangeli noted some details
that I never got round to incorporating into the manual page.
mmap.2
Michael Kerrisk
Add a subhead for the 'flags' argument
Michael Kerrisk
Move some text hidden at the end of DESCRIPTION to NOTES
msgctl.2
Michael Kerrisk
Add information on permission bits (based on sysvipc(7) text)
Michael Kerrisk
Copy information on 'msqid_ds' fields from sysvipc(7)
open.2
Michael Kerrisk
Clarify that O_NOFOLLOW is relevant (only) for basename of 'pathname'
Aleksa Sarai
Add references to new openat2(2) page
Michael Kerrisk
Note EINVAL error for invalid character in basename of 'pathname'
pidfd_open.2
Michael Kerrisk
Mention pidfd_getfd(2)
poll.2
Michael Kerrisk
Add an example program
Michael Kerrisk
Mention epoll(7) in the introductory paragraph
Michael Kerrisk
Improve description of EFAULT error
Michael Kerrisk
Fix description of ENOMEM error
select_tut.2
Michael Kerrisk
Adjust header file includes in example
Employ <sys/select.h>, rather than the historical header files.
semctl.2
Michael Kerrisk
Copy information on 'semid_ds' fields from sysvipc(7)
Michael Kerrisk
Add a reference to the example in shmop(2)
Michael Kerrisk
Add information on permission bits (based on sysvipc(7) text)
semget.2
Michael Kerrisk
EXAMPLE: add an example program
semop.2
Michael Kerrisk
Add a reference to the semop(2) example in shmop(2)
shmctl.2
Michael Kerrisk
Add information on permission bits (based on sysvipc(7) text)
Michael Kerrisk
Note that execute permission is not needed for shmat() SHM_EXEC
Michael Kerrisk
Copy information on 'shmid_ds' fields from sysvipc(7)
Michael Kerrisk
Some small improvements to the description of the 'shmid_ds' structure
shmget.2
Michael Kerrisk
Add a reference to the example in shmop(2)
shmop.2
Michael Kerrisk
EXAMPLE: add a pair of example programs
Add example programs demonstrating usage of shmget(2), shmat(2),
semget(2), semctl(2), and semop(2).
sigaction.2
signal.7
Zack Weinberg
Document kernel bugs in delivery of signals from CPU exceptions
stat.2
Michael Kerrisk
Clarify definitions of timestamp fields
In particular, make it clear that atime and mtime relate to the
file *data*.
syscalls.2
Michael Kerrisk
Add new Linux 5.6 system calls
Michael Kerrisk
Note that the 5.x series followed 4.20
timer_create.2
Michael Kerrisk
timer_create(2) also supports CLOCK_TAI
Michael Kerrisk
Mention clock_getres(2) for further details on the various clocks
timerfd_create.2
Michael Kerrisk [Thomas Gleixner]
Note a case where timerfd_settime() can fail with ECANCELED
Michael Kerrisk [devi R.K, Thomas Gleixner]
Negative changes to CLOCK_REALTIME may cause read() to return 0
Michael Kerrisk
Rework text for EINVAL for invalid clock ID
Michael Kerrisk
Refer reader to clock_getres(2) for further details on the clocks
unshare.2
Michael Kerrisk
Add CLONE_NEWCGROUP and CLONE_NEWTIME to example program
exit.3
Michael Kerrisk [Walter Harms]
Small improvement to the discussion of 'status' argument
ftok.3
Michael Kerrisk
EXAMPLE: add a reference to the example in semget(2)
getifaddrs.3
Michael Kerrisk [Michael Galassi]
EXAMPLE: remove unneeded loop variable
nl_langinfo.3
Eugene Syromyatnikov
Document era-related locale elements
Eugene Syromyatnikov
Add information about AM/PM time format locale elements
Eugene Syromyatnikov
Mention the respective strftime(3) conversion specifications
sem_init.3
Michael Kerrisk
Add references to example code in shm_open(3) and sem_wait(3)
sem_post.3
Michael Kerrisk
Add a reference to code example code in shm_open(3)
shm_open.3
Michael Kerrisk
EXAMPLE: add some example programs
strcmp.3
Michael Kerrisk
Add an example program
Michael Kerrisk [Andrew Micallef, Walter Harms]
Rework text describing return value to be clearer
Michael Kerrisk
Note that the comparison is done using unsigned char
Michael Kerrisk
SEE ALSO: add ascii(7)
strftime.3
Eugene Syromyatnikov [Michael Kerrisk]
Refer to the relevant nl_langinfo(3) items
Eugene Syromyatnikov
Expand %E and %O description
Eugene Syromyatnikov
Consistently document fall-back format string
proc.5
Mike Frysinger
Clarify /proc/[pid]/cmdline mutability
cgroups.7
Michael Kerrisk
Update list of cgroups v2 controllers
Update the list of cgroups v2 controllers (several controllers
were missing).
Michael Kerrisk
Add a subsection on cgroup v2 mount options and include 'nsdelegate'
Michael Kerrisk
Document the cgroups v2 'memory_localevents' mount option
Michael Kerrisk
SEE ALSO: add Documentation/admin-guide/cgroup-v2.rst
namespaces.7
Michael Kerrisk
Add time namespaces information
Michael Kerrisk
Eliminate some superfluous info from display of /proc/PID/ns links
path_resolution.7
Aleksa Sarai
Update to mention openat2(2) features
socket.7
Michael Kerrisk
Note SCM message types for SO_TIMESTAMP and SO_TIMESTAMPNS
tcp.7
Michael Kerrisk
SEE ALSO: mention Documentation/networking/ip-sysctl.txt
time.7
Michael Kerrisk
Add small subsection on clocks and time namespaces
unix.7
Heinrich Schuchardt
Correct example
vsock.7
Stefano Garzarella [Jorgen Hansen, Stefan Hajnoczi]
Add VMADDR_CID_LOCAL description
|