summaryrefslogtreecommitdiffstats
path: root/Changes
blob: 46eee657cc9524338dfbfacf0bbb2285296b65c5 (plain) (blame)
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
==================== Changes in man-pages-3.67 ====================

Released: 2014-05-21, 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:


Apologies if I missed anyone!


New and rewritten pages
-----------------------

sched_setattr.2
    Michael Kerrisk, Peter Zijlstra [Juri Lelli]
        New page describing sched_setattr(2) and sched_getattr(2)

system.3
    Michael Kerrisk
        Rewrote large parts of the page and added a number of details


Newly documented interfaces in existing pages
---------------------------------------------

sched.7
    Peter Zijlstra, Michael Kerrisk  [Juri Lelli]
        Document SCHED_DEADLINE
            Raw text from Peter Zijlstra

New and changed links
---------------------

renameat2.2
    Michael Kerrisk
        New link to rename.2

sched_getattr.2
    Michael Kerrisk
        New link to new sched_setattr.


Changes to individual pages
---------------------------

bind.2
    Michael Kerrisk
        ERRORS: Add EADDRINUSE for ephemeral port range exhaustion

chown.2
    Michael Kerrisk
        NOTES: Add some subheadings

connect.2
    Michael Kerrisk  [William Morriss]
        ERRORS: Add EADDRNOTAVAIL for ephemeral port range exhaustion
            Verified from testing and the kernel source.
            See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=745775
    Michael Kerrisk
        Remove mention of ip_local_port_range under EAGAIN error
            Man-pages commit ac7477eb7a8 added EADDRNOTAVAIL as the correct
            error for ephemeral port range exhaustion.  However, that error
            was also incorrectly described under the EAGAIN entry. So,
            remove that text under EAGAIN.

create_module.2
delete_module.2
init_module.2
query_module.2
    Michael Kerrisk  [Lucas De Marchi]
        Clarify glibc header file declaration/ABI wrapper details
            create_module(), delete_module(), init_module(), and
            query_module() are not declared in header files, but
            through an accident of history glibc provides an ABI
            for them that it continues to maintain, for
            compatibility reasons.

execve.2
    Michael Kerrisk  [Steven Stewart-Gallus]
        Note SIGKILL case when execve() fails beyond the point of no return
    Michael Kerrisk
        NOTES: Add a subheading and reorder paragraphs

fanotify_init.2
    Heinrich Schuchardt [Michael Kerrisk]
        Document range of permitted flags for event_f_flags
            With a new patch included in the mm tree, event_f_flags is
            checked for allowable values.

fcntl.2
    Michael Kerrisk
        Add "file locking" subheading under NOTES

fork.2
    Michael Kerrisk
        ERRORS: SCHED_DEADLINE tasks can fail with EAGAIN
            SCHED_DEADLINE tasks can fail with EAGAIN unless the
            reset-on-fork flag is set.

futex.2
    Michael Kerrisk
        Note that there is no glibc wrapper

getpriority.2
    Rasmus Villemoes
        Fix prototypes for getpriority() and setpriority()
            The who argument has type id_t (which happens to be u32 on linux).

get_robust_list.2
    Rasmus Villemoes
        Add <sys/types.h> to synopsis of get_robust_list()
            If one were to implement wrappers for [gs]et_robust_list() using the
            given prototypes, one would also have to include sys/types.h to get
            a definition of size_t.

getrusage.2
    Michael Kerrisk  [Bill Allombert]
        _GNU_SOURCE must be defined to obtain RUSAGE_THREAD definition
            See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=746569

link.2
open.2
    Andy Lutomirski [Michael Kerrisk]
        Update AT_EMPTY_PATH and O_PATH documentation

listen.2
    Michael Kerrisk
        ERRORS: Add EADDRINUSE for ephemeral port range exhaustion

mbind.2
    Rasmus Villemoes
        Fix prototype for mbind(2)
            The nmask argument is const. The return type in numaif.h is long.
            (Well, at least <numaif.h> says nmask is const. The current kernel
            does not define it as a const argument, but sys_mbind() only
            passes it to get_nodes(), which does treat it as const.)

msgop.2
    Davidlohr Bueso [Michael Kerrisk]
        Enhance description of "full queue" criteria

poll.2
    Rasmus Villemoes
        Add <signal.h> to synopsis for ppoll()
            One needs to #include <signal.h> to get the definition of the
            type (sigset_t) of the mask argument to ppoll().

readlink.2
    Rasmus Villemoes
        Fix return type of readlinkat()

recv.2
    Michael Kerrisk
        Clarify details of msg_name and msg_namelen fields

recvmmsg.2
    Michael Kerrisk
        Describe timeout bug
            See FIXME https://bugzilla.kernel.org/show_bug.cgi?id=75371
            and http://thread.gmane.org/gmane.linux.man/5677

remap_file_pages.2
    Andy Lutomirski [Christoph Hellwig, Andy Lutomirski]
        remap_file_pages() has no benefit for real files
            Linux commit 3ee6dafc677a68e461a7ddafc94a580ebab80735 caused
            remap_file_pages to be emulated when used on real file.

sched_get_priority_max.2
    Michael Kerrisk
        'policy' can also be SCHED_DEADLINE

sched_setaffinity.2
    Rasmus Villemoes
        Fix prototype for sched_setaffinity()
            The mask argument is const.

sched_setparam.2
    Michael Kerrisk
        ERRORS: mark errors that apply just for sched_setparam()
    Michael Kerrisk
        ERRORS: Add EINVAL for invalid arguments
    Michael Kerrisk
        SEE ALSO: add sched_setattr(2)

sched_setscheduler.2
    Michael Kerrisk
        ERRORS: mark errors that apply just to sched_setscheduler()
    Michael Kerrisk
        ERRORS: add EINVAL case for pid < 0
    Michael Kerrisk
        ERRORS: separate out EINVAL cases

semget.2
    Michael Kerrisk
        NOTES: Add subheadings and reorder paragraphs

semop.2
    Rasmus Villemoes
        Fix prototypes for semop() and semtimedop()
            The nsops arguments have type size_t, not unsigned, and the
            timeout argument of semtimedop() is const.
    Michael Kerrisk
        NOTES: Add a subheading

send.2
    Michael Kerrisk
        Add details on various 'msghdr' fields
    Michael Kerrisk
        ERRORS: Add EAGAIN for ephemeral port range exhaustion
    Michael Kerrisk
        Add some subheadings under DESCRIPTION

shmget.2
    Michael Kerrisk
        NOTES: Add a subheading

stat.2
    Michael Kerrisk  [Aurelien Jarno]
        Describe feature test macro requirements for file type test macros
            See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=728240
    Michael Kerrisk
        Update FTM requirements for lstat()
    Michael Kerrisk
        Split discussion of 'st_mode' fields into type and permissions
    Michael Kerrisk
        Move text on S_I*() macros to follow text on S_I* macros
            That ordering is more logical

stime.2
    Rasmus Villemoes
        Fix prototype for stime()
            The argument is const, both according to the actual header files and
            according to <http://www.sco.com/developers/devspecs/vol1a.pdf>.

syscall.2
    Rasmus Villemoes
        Fix prototype for syscall()
            The first argument and the return value of syscall() has type long,
            not int.

getopt.3
    Michael Kerrisk
        EXAMPLE: Add subheadings to distinguish the two example programs

malloc.3
    Michael Kerrisk
        Reword text referring to mallopt(3)
            Linux libc is no longer "recent"; drop mention of it.

pthread_attr_setinheritsched.3
pthread_attr_setschedparam.3
pthread_attr_setschedpolicy.3
pthread_setaffinity_np.3
pthread_setschedparam.3
pthread_setschedprio.3
pthread_yield.3
pthreads.7
    Michael Kerrisk
        Change references to "sched_setscheduler(2)" to "sched(7)"
            Change consistent with the fact that the scheduling overview
            page is now sched(7) not sched_setscheduler(2).

pthread_attr_setstackaddr.3
    Peng Haitao
        ATTRIBUTES: Note functions that are thread-safe
            The functions pthread_attr_setstackaddr() and
            pthread_attr_getstackaddr() are thread safe.

pthread_attr_setstacksize.3
    Peng Haitao
        ATTRIBUTES: Note functions that are thread-safe
            The functions pthread_attr_setstacksize() and
            pthread_attr_getstacksize() are thread safe.

pthread_kill.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function pthread_kill() is thread safe.

pthread_kill_other_threads_np.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function pthread_kill_other_threads_np() is thread safe.

pthread_self.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function pthread_self() is thread safe.

pthread_setcancelstate.3
    Michael Kerrisk
        Add paragraph breaks to "Asynchronous cancelability" subsection

pthread_setcancelstate.3
    Peng Haitao
        ATTRIBUTES: Note functions that are thread-safe
            The functions pthread_setcancelstate() and
            pthread_setcanceltype() are thread safe.
    Michael Kerrisk
        NOTES: Add some subheadings

pthread_setschedparam.3
    Peng Haitao
        ATTRIBUTES: Note functions that are thread-safe
            The functions pthread_setschedparam() and pthread_getschedparam()
            are thread safe.

pthread_setschedprio.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function pthread_setschedprio() is thread safe.

pthread_sigmask.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function pthread_sigmask() is thread safe.

pthread_sigqueue.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function pthread_sigqueue() is thread safe.

pthread_testcancel.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function pthread_testcancel() is thread safe.

pthread_yield.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function pthread_yield() is thread safe.

remquo.3
    Peng Haitao
        ATTRIBUTES: Note functions that are thread-safe
            The functions remquo(), remquof() and remquol() are thread safe.

rtime.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function rtime() is thread safe.

sched_getcpu.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function sched_getcpu() is thread safe.

stpcpy.3
    Ingo Schwarze
        Note some history of stpcpy()
            Quoting Ingo:
            I just noticed that the stpcpy(3) manual contains a speculation
            that appears to be untrue on closer investigation:  That function
            did not originate in MS DOS, but in Lattice C on AmigaDOS.

            Here is a patch against the git master HEAD to fix that, and add
            some more historical information.  To provide some background and
            allow you to more easily verify the correctness of the patch, i'm
            appending my mail to <misc@openbsd.org>, where i'm giving some
            more details about the history and pointing to some primary
            sources.  That mail also contains the (similar, but shorter)
            patch i just committed to the OpenBSD manual page.

strcasecmp.3
    Michael Kerrisk  [Aurelien Jarno, Török Edwin]
        Explain why strcasecmp()+strncasecmp() are also declared in <string.h>
            See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=729436

strcpy.3
    Michael Kerrisk
        NOTES: Add a subheading

fd.4
    Michael Kerrisk  [Sam Varshavchik]
        Fix floppy disk device names
            The naming convention shown in the page was ancient.
            Now, the page is consistent with Documentation/devices.txt
            (where it is noted that "The use of the capital letters
            D, H and E for the 3.5" models have been deprecated, since
            the drive type is insignificant for these devices"

proc.5
    Michael Kerrisk
        Document /proc/timer_stats
    Michael Kerrisk
        (Briefly) document /proc/timer_list
            Text taken from kernel commit
            289f480af87e45f7a6de6ba9b4c061c2e259fe98.
    Michael Kerrisk
        Add /proc/sys/kernel/{sched_rt_period_us,sched_rt_runtime_us}
            Reference sched(7) for an explanation of these two files

capabilities.7
    Michael Kerrisk
        Mention sched_setattr(2) under CAP_SYS_NICE

cpuset.7
    Michael Kerrisk
        SEE ALSO: add sched(7)

credentials.7
    Michael Kerrisk
        Mention sched_getattr() as a place where credentials are checked

fanotify.7
    Heinrich Schuchardt  [Jan Kara]
        BUGS: error events can be lost when reading from fanotify FD
    Michael Kerrisk  [Heinrich Schuchardt]
        Fix description of FAN_EVENT_NEXT()
            FAN_EVENT_NEXT() does not update 'meta'; rather, it returns a
            pointer to the next metadata structure. In addition, generally
            rework the description to be a bit clearer and more detailed.
    Heinrich Schuchardt
        Document FAN_EVENT_METADATA_LEN

ip.7
    Michael Kerrisk
        Note cases where an ephemeral port is used
    Michael Kerrisk
        Remove BUGS text on glibc failing to declare in_pktinfo
    Michael Kerrisk
        Clarify 'ip_local_port_range' and mention the term "ephemeral ports"
    Michael Kerrisk
        Note some more details about assignment of ephemeral ports
    Michael Kerrisk
        BUGS: ephemeral port range exhaustion is diagnosed inconsistently
            Different system calls use different 'errno' values to diagnose
            exhaustion of the ephemeral port range.

sched.7
    Michael Kerrisk
        Document sched_rt_period_us and sched_rt_runtime_us /proc files
            And rework and relocate the text on dealing with runaway
            real-time processes.
    Michael Kerrisk
        Mention sched_setattr(2) in list of APIs that can change policies
    Michael Kerrisk
        sched_setattr(2) can also be used to set 'nice' value
    Michael Kerrisk
        Remove mention of sched_setscheduler() when talking about sched_priority
            There are nowadays multiple ways to set sched_priority (and
            in fact there always were, since we also had sched_setparam(2)).
    Michael Kerrisk
        SEE ALSO: Add Documentation/scheduler/sched-design-CFS.txt
    Michael Kerrisk
        Don't mention sched_setscheduler(2) in discussions of setting policies
            In a couple of places, sched_setscheduler(2) is mentioned as the
            way of setting policies. But now there is sched_setattr(2) as
            well, rewrite the text in a more generic way.
    Michael Kerrisk
        Rework summary text describing sched_setattr(2) and sched_getattr(2)
            Note that these APIs are a superset of sched_setscheduler(2)
            and sched_getscheduler(2).
    Michael Kerrisk
        Remove crufty text relating to sched_setscheduler()
            All of the removed text is in sched_setscheduler(2) and
            should have been trimmed from this page.
    Michael Kerrisk
        SEE ALSO: Mention more files in Documentation/scheduler/ directory