summaryrefslogtreecommitdiff
path: root/Changes
blob: 3692825a46dade0a98a37a7920151a9342c6cdce (plain)
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
==================== Changes in man-pages-3.70 ====================

Released: 2014-07-08, 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:

Carlos O'Donell <carlos@redhat.com>
Elie De Brauwer <eliedebrauwer@gmail.com>
Florian Weimer <fweimer@redhat.com>
Heinrich Schuchardt <xypron.glpk@gmx.de>
Marko Myllynen <myllynen@redhat.com>
Michael Kerrisk <mtk.manpages@gmail.com>
Nadav Har'El <nyh@math.technion.ac.il>
NeilBrown <neilb@suse.de>
Rich Felker <dalias@libc.org>
Robert P. J. Day <rpjday@crashcourse.ca>
Simon Paillard <spaillard@debian.org>
Tomi Salminen <tlsalmin@gmail.com>
Walter Harms <wharms@bfs.de>
Yuri Kozlov <yuray@komyakino.ru>
Кирилл <kirillnow@gmail.com>

Apologies if I missed anyone!


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

sprof.1
    Michael Kerrisk [Marko Myllynen]
        New page for the glibc sprof(1) command


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

epoll_ctl.2
    NeilBrown
        Document EPOLLWAKEUP

epoll.7
    NeilBrown
        Document EPOLLWAKEUP


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

iconv.1
iconvconfig.8
    Marko Myllynen
        Clarify gconv file terminology a bit

ldd.1
    Michael Kerrisk
        SEE ALSO: add sprof(1)

connect.2
    Michael Kerrisk
        ERRORS: add EPROTOTYPE
            See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=708394

dup.2
    Michael Kerrisk  [Rich Felker]
        Fix erroneous discussion regarding closing 'newfd' before calling dup2()
            And propose a workaround if the caller cares about catching
            close() time errors.

            See http://stackoverflow.com/questions/23440216/race-condition-when-using-dup2#comment36888604_23444465
            and http://austingroupbugs.net/view.php?id=411
    Michael Kerrisk
        Rework and enhance discussion of dup2()
            In particular, note that dup2() performs the steps of closing
            and reusing 'newfd' atomically.
    Michael Kerrisk
        Add subhead for dup3()

epoll_ctl.2
    Michael Kerrisk
        BUGS: EPOLLWAKEUP is silently ignored without CAP_BLOCK_SUSPEND
            If the caller does not have CAP_BLOCK_SUSPEND, then EPOLLWAKEUP
            is silently ignored.

fcntl.2
    Michael Kerrisk  [Tomi Salminen]
        The return value for F_SETPIPE_SZ is the pipe capacity
    Michael Kerrisk
        ERRORS: Document ENOTDIR error for F_NOTIFY
    Michael Kerrisk
        Use proper page cross-references in F_NOTIFY discussion
    Michael Kerrisk
        Suggest the use of real-time signals with F_NOTIFY

getitimer.2
    Michael Kerrisk
        Rewrite a few pieces to clarify some details

inotify_add_watch.2
    Michael Kerrisk
        Clarify that the target of a watch is an i-node
            The target of a watch is an i-node, not a pathname. Clarify
            the text to prevent the reader possibly misunderstanding
            that establishing watches by two different links to the same
            file might create different watch descriptors.

open.2
    Michael Kerrisk  [Кирилл]
        O_CLOEXEC is also one the flags not ignored when O_PATH is specified

pipe.2
    Elie De Brauwer
        PIPE_BUF is defined in limits.h
            To make use of PIPE_BUF in an application one should include
            <limits.h>.  Adding a reference to this inclusion.

poll.2
    Michael Kerrisk  [Nadav Har'El]
        The negate-fd-to-ignore technique does not work for file descriptor 0
            See https://bugzilla.kernel.org/show_bug.cgi?id=79411

set_tid_address.2
    Michael Kerrisk  [Rich Felker]
        Use "thread" rather than "process" in DESCRIPTION
    Michael Kerrisk
        SEE ALSO: add gettid(2)

shmop.2
    Michael Kerrisk
        Explain SHMLBA in much more detail

splice.2
    Michael Kerrisk
        Document EAGAIN error
            See https://bugzilla.kernel.org/show_bug.cgi?id=48641

syscalls.2
    Carlos O'Donell
        Add prlimit64(2)
            While trying to reconcile the new features in glibc with the
            documented entries in the linux kernel man pages I noticed that
            glibc exports prlimit64 for use by 32-bit applications (as does
            the linux kernel), but that prlimit64 was not defined in the
            syscalls list or in the prlimit-related page.

            This is not the complete fix for this, but I don't have the time
            to explain why and when prlimit64 should be used (or how it should
            be used safely). Therefore I'm just patching the syscalls.2 list
            to show that prlimit64 exists and was added in 2.6.36 (verified
            with git by checking out the tags before and after).

            Unless you've purposely excluded prlimit64 to avoid telling users
            about it because it's complicated, please apply.

syslog.2
    Michael Kerrisk
        Rework introductory paragraph
    Michael Kerrisk  [Robert P. J. Day]
        Rework text describing loglevels
            The kernel header file mentioned in the discussion of the KERN_*
            constants has morphed and is no longer exported inside glibc.
            And the definitions of the constants themselves changed subtly
            with kernel commit 04d2c8c83d0e3ac5f78aeede51babb3236200112.
            So, rewrite the description of the constants to be a bit more
            abstract.
    Michael Kerrisk
        Rewrite parts of the page, and import /proc/sys/kernel/printk
            * Move /proc/sys/kernel/printk from proc(5) to this page,
              and correct various details in the discussion of that file.
            * Rewrite and correct various other details on the page.
            * Clean out some crufty text.
            * Miscellaneous minor fixes.
    Michael Kerrisk
        Update SYSLOG_ACTION_CONSOLE_OFF + SYSLOG_ACTION_CONSOLE_ON description
            Details changed in Linux 2.6.32

tee.2
    Michael Kerrisk
        Document EAGAIN error
            See https://bugzilla.kernel.org/show_bug.cgi?id=48641

vmsplice.2
    Michael Kerrisk
        Document EAGAIN error
            See https://bugzilla.kernel.org/show_bug.cgi?id=48641

ether_aton.3
    Michael Kerrisk
        Make description of ether_line() bug a little more informative

mallopt.3
    Michael Kerrisk  [Florian Weimer]
        MALLOC_MMAP_THRESHOLD_ and MALLOC_MMAP_MAX_ *do* work in setgid programs
            My testing on this point was bogus, overlooking details of
            strace(1)'s behavior with setuid programs.

            See https://sourceware.org/bugzilla/show_bug.cgi?id=12155

printf.3
    Michael Kerrisk  [Rich Felker]
        Remove libc4 and libc5 details
            Rich Felker noted that "scare text" in the man page warned about
            the use of snprintf() on libc, and that some people had cited
            this as a reason not to use snprintf().  Linux libc is now
            ancient history, so there is no real need to keep that text.
            But, while we're at it, we may as well clear out all of the
            other ancient libc4 and libc5 pieces in the page. They are
            nowadays more clutter than help.
    Michael Kerrisk
        SUSv3 and later agree with C99 for the snprintf() return value
            Determined by inspection of the SUSv3 and SUSv4 specifications.
    Michael Kerrisk
        Remove some old text about glibc 2.0 changes
            We probably don't now need such ancient info.
    Michael Kerrisk
        Update references to standards for C and S conversion specifiers

profil.3
    Michael Kerrisk
        SEE ALSO: add sprof(1)

charmap.5
    Marko Myllynen
        Various minor updates and improvements
            - more precise title
            - extend description a bit
            - document previously omitted WIDTH_DEFAULT
    Marko Myllynen
        Remove accidental ISO C compliance reference
            glibc refers in locale/programs/charmap.c to ISO C 99 section
            7.17.(2) and ISO C 99 section 5.2.1.(3) that if a character map
            is not ASCII compatible then the locale using it is not ISO C
            compliant. This does not state anything about the character set
            itself.

proc.5
    Michael Kerrisk
        Replace /proc/sys/kernel/printk discussion with reference to syslog(2)
            It makes more sense to have the /proc/sys/kernel/printk with
            the related material in syslog(2).
    Michael Kerrisk
        Rewrite /proc/sys/kernel/printk description

inotify.7
    Michael Kerrisk
        Clarify with events are generated for watched directories
            Really, with respect to watched directories, events fall into
            three classes (not two, as was shown):

            * Events that can be generated only for the watched directory.
            * Events that can be generated only for objects that are inside
              the watched directory.
            * Events that can be generated both for the watched directory
              and for objects inside the directory.

            So, mark these three classes more clearly in the list of inotify
            events.
    Heinrich Schuchardt  [Michael Kerrisk]
        BUGS: Note possible bug triggered by watch descriptor reuse
            Watch descriptor IDs are returned by inotify_add_watch().
            When calling inotify_rm_watch() an IN_IGNORE is placed on the
            inotify queue pointing to the ID of the removed watch.

            inotify_add_watchi() should not return a watch descriptor ID for
            which events are still on the queue but should return an
            unused ID.

            Unfortunately, the existing Kernel code does not provide such a
            guarantee.

            Actually, in rare cases watch descriptor IDs are returned by
            inotify_add_watch() for which events are still on the inotify
            queue.

            See https://bugzilla.kernel.org/show_bug.cgi?id=77111
    Michael Kerrisk
        Add further detail to the watch descriptor reuse bug
            As well as inotify_rm_watch(), file deletion and unmounting a
            filesystem can also cause a watch descriptor to be deleted.
    Michael Kerrisk
        The watch descriptor reuse bug may be hard to hit in practice
            Explain the circumstances in detail, indicating that the
            bug may be very unlikely to occur in practice.
    Michael Kerrisk
        Clarify description of IN_EXCL_UNLINK
            Clarify the text a little, in particular making it clearer
            that the target of a watch is an i-node (not a pathname).
    Michael Kerrisk
        Clarify IN_ONESHOT explanation
            Make it clearer that the target of monitoring is an i-node,
            not a pathname.
    Michael Kerrisk
        Make comment on 'mask' field more accurate

libc.7
    Michael Kerrisk
        Clarify man-pages policy on documenting C libraries other tahn glibc
    Michael Kerrisk
        Use absolute dates in discussion of libc vs glibc

pipe.7
    Elie De Brauwer
        Add reference that the pipe capacity can be changed
            In fcntl(2) F_SETPIPE_SZ, F_GETPIPE_SZ and
            /proc/sys/fs/pipe-max-size are defined, however
            pipe(7) still defines the pipe capacity as being
            a static entity. Adding a reference to fcntl(2).
    Michael Kerrisk  [Walter Harms]
        Clarify that since 2.6.35, 65535 bytes is the default pipe capacity

ld.so.8
    Michael Kerrisk
        Clarify that LD_PROFILE can specify just a single shared object
    Michael Kerrisk
        Clarify that LD_PROFILE output is appended to target file
            The LD_PROFILE output is appended to any existing
            contents of the target file.
    Michael Kerrisk
        SEE ALSO: add sprof(1)