OSDN Git Service

(split) LDP: Update POT and ja.po to LDP v3.54
[linuxjm/LDP_man-pages.git] / po4a / epoll / po / epoll.pot
index 0b7c6b6..2e40005 100644 (file)
@@ -7,7 +7,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2012-04-23 07:52+0900\n"
+"POT-Creation-Date: 2013-09-28 04:06+0900\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -25,23 +25,23 @@ msgstr ""
 #. type: TH
 #: build/C/man7/epoll.7:21
 #, no-wrap
-msgid "2009-02-01"
+msgid "2012-04-17"
 msgstr ""
 
 #. type: TH
-#: build/C/man7/epoll.7:21 build/C/man2/epoll_create.2:25 build/C/man2/epoll_ctl.2:21 build/C/man2/epoll_wait.2:23 build/C/man2/poll.2:31
+#: build/C/man7/epoll.7:21 build/C/man2/epoll_create.2:24 build/C/man2/epoll_ctl.2:20 build/C/man2/epoll_wait.2:22 build/C/man2/poll.2:31
 #, no-wrap
 msgid "Linux"
 msgstr ""
 
 #. type: TH
-#: build/C/man7/epoll.7:21 build/C/man2/epoll_create.2:25 build/C/man2/epoll_ctl.2:21 build/C/man2/epoll_wait.2:23 build/C/man2/poll.2:31
+#: build/C/man7/epoll.7:21 build/C/man2/epoll_create.2:24 build/C/man2/epoll_ctl.2:20 build/C/man2/epoll_wait.2:22 build/C/man2/poll.2:31
 #, no-wrap
 msgid "Linux Programmer's Manual"
 msgstr ""
 
 #. type: SH
-#: build/C/man7/epoll.7:22 build/C/man2/epoll_create.2:26 build/C/man2/epoll_ctl.2:22 build/C/man2/epoll_wait.2:24 build/C/man2/poll.2:32
+#: build/C/man7/epoll.7:22 build/C/man2/epoll_create.2:25 build/C/man2/epoll_ctl.2:21 build/C/man2/epoll_wait.2:23 build/C/man2/poll.2:32
 #, no-wrap
 msgid "NAME"
 msgstr ""
@@ -52,47 +52,48 @@ msgid "epoll - I/O event notification facility"
 msgstr ""
 
 #. type: SH
-#: build/C/man7/epoll.7:24 build/C/man2/epoll_create.2:28 build/C/man2/epoll_ctl.2:24 build/C/man2/epoll_wait.2:26 build/C/man2/poll.2:34
+#: build/C/man7/epoll.7:24 build/C/man2/epoll_create.2:27 build/C/man2/epoll_ctl.2:23 build/C/man2/epoll_wait.2:25 build/C/man2/poll.2:34
 #, no-wrap
 msgid "SYNOPSIS"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:26 build/C/man2/epoll_ctl.2:26
+#: build/C/man7/epoll.7:26 build/C/man2/epoll_ctl.2:25
 msgid "B<#include E<lt>sys/epoll.hE<gt>>"
 msgstr ""
 
 #. type: SH
-#: build/C/man7/epoll.7:26 build/C/man2/epoll_create.2:35 build/C/man2/epoll_ctl.2:29 build/C/man2/epoll_wait.2:36 build/C/man2/poll.2:46
+#: build/C/man7/epoll.7:26 build/C/man2/epoll_create.2:34 build/C/man2/epoll_ctl.2:28 build/C/man2/epoll_wait.2:35 build/C/man2/poll.2:46
 #, no-wrap
 msgid "DESCRIPTION"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:36
+#: build/C/man7/epoll.7:40
 msgid ""
-"B<epoll> is a variant of B<poll>(2)  that can be used either as an "
-"edge-triggered or a level-triggered interface and scales well to large "
-"numbers of watched file descriptors.  The following system calls are "
-"provided to create and manage an B<epoll> instance:"
+"The B<epoll> API performs a similar task to B<poll>(2): monitoring multiple "
+"file descriptors to see if I/O is possible on any of them.  The B<epoll> API "
+"can be used either as an edge-triggered or a level-triggered interface and "
+"scales well to large numbers of watched file descriptors.  The following "
+"system calls are provided to create and manage an B<epoll> instance:"
 msgstr ""
 
 #. type: IP
-#: build/C/man7/epoll.7:36 build/C/man7/epoll.7:46 build/C/man7/epoll.7:54
+#: build/C/man7/epoll.7:40 build/C/man7/epoll.7:49 build/C/man7/epoll.7:57
 #, no-wrap
 msgid "*"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:46
+#: build/C/man7/epoll.7:49
 msgid ""
-"An B<epoll> instance created by B<epoll_create>(2), which returns a file "
-"descriptor referring to the epoll instance.  (The more recent "
-"B<epoll_create1>(2)  extends the functionality of B<epoll_create>(2).)"
+"B<epoll_create>(2)  creates an B<epoll> instance and returns a file "
+"descriptor referring to that instance.  (The more recent B<epoll_create1>(2)  "
+"extends the functionality of B<epoll_create>(2).)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:54
+#: build/C/man7/epoll.7:57
 msgid ""
 "Interest in particular file descriptors is then registered via "
 "B<epoll_ctl>(2).  The set of file descriptors currently registered on an "
@@ -100,18 +101,20 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:57
-msgid "Finally, the actual wait is started by B<epoll_wait>(2)."
+#: build/C/man7/epoll.7:61
+msgid ""
+"B<epoll_wait>(2)  waits for I/O events, blocking the calling thread if no "
+"events are currently available."
 msgstr ""
 
 #. type: SS
-#: build/C/man7/epoll.7:57
+#: build/C/man7/epoll.7:61
 #, no-wrap
-msgid "Level-Triggered and Edge-Triggered"
+msgid "Level-triggered and edge-triggered"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:66
+#: build/C/man7/epoll.7:70
 msgid ""
 "The B<epoll> event distribution interface is able to behave both as "
 "edge-triggered (ET) and as level-triggered (LT).  The difference between the "
@@ -120,73 +123,73 @@ msgid ""
 msgstr ""
 
 #. type: IP
-#: build/C/man7/epoll.7:66
+#: build/C/man7/epoll.7:70
 #, no-wrap
 msgid "1."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:72
+#: build/C/man7/epoll.7:76
 msgid ""
 "The file descriptor that represents the read side of a pipe (I<rfd>)  is "
 "registered on the B<epoll> instance."
 msgstr ""
 
 #. type: IP
-#: build/C/man7/epoll.7:72
+#: build/C/man7/epoll.7:76
 #, no-wrap
 msgid "2."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:74
+#: build/C/man7/epoll.7:78
 msgid "A pipe writer writes 2 kB of data on the write side of the pipe."
 msgstr ""
 
 #. type: IP
-#: build/C/man7/epoll.7:74
+#: build/C/man7/epoll.7:78
 #, no-wrap
 msgid "3."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:80
+#: build/C/man7/epoll.7:84
 msgid ""
 "A call to B<epoll_wait>(2)  is done that will return I<rfd> as a ready file "
 "descriptor."
 msgstr ""
 
 #. type: IP
-#: build/C/man7/epoll.7:80
+#: build/C/man7/epoll.7:84
 #, no-wrap
 msgid "4."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:83
+#: build/C/man7/epoll.7:87
 msgid "The pipe reader reads 1 kB of data from I<rfd>."
 msgstr ""
 
 #. type: IP
-#: build/C/man7/epoll.7:83
+#: build/C/man7/epoll.7:87
 #, no-wrap
 msgid "5."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:87
+#: build/C/man7/epoll.7:91
 msgid "A call to B<epoll_wait>(2)  is done."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:122
+#: build/C/man7/epoll.7:126
 msgid ""
 "If the I<rfd> file descriptor has been added to the B<epoll> interface using "
 "the B<EPOLLET> (edge-triggered)  flag, the call to B<epoll_wait>(2)  done in "
 "step B<5> will probably hang despite the available data still present in the "
 "file input buffer; meanwhile the remote peer might be expecting a response "
 "based on the data it already sent.  The reason for this is that "
-"edge-triggered mode only delivers events when changes occur on the monitored "
+"edge-triggered mode delivers events only when changes occur on the monitored "
 "file descriptor.  So, in step B<5> the caller might end up waiting for some "
 "data that is already present inside the input buffer.  In the above example, "
 "an event on I<rfd> will be generated because of the write done in B<2> and "
@@ -196,7 +199,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:132
+#: build/C/man7/epoll.7:136
 msgid ""
 "An application that employs the B<EPOLLET> flag should use nonblocking file "
 "descriptors to avoid having a blocking read or write starve a task that is "
@@ -205,31 +208,31 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:133
+#: build/C/man7/epoll.7:137
 #, no-wrap
 msgid "B<i>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:136
+#: build/C/man7/epoll.7:140
 msgid "with nonblocking file descriptors; and"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:136
+#: build/C/man7/epoll.7:140
 #, no-wrap
 msgid "B<ii>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:144
+#: build/C/man7/epoll.7:148
 msgid ""
 "by waiting for an event only after B<read>(2)  or B<write>(2)  return "
 "B<EAGAIN>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:155
+#: build/C/man7/epoll.7:159
 msgid ""
 "By contrast, when used as a level-triggered interface (the default, when "
 "B<EPOLLET> is not specified), B<epoll> is simply a faster B<poll>(2), and "
@@ -237,7 +240,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:172
+#: build/C/man7/epoll.7:176
 msgid ""
 "Since even with edge-triggered B<epoll>, multiple events can be generated "
 "upon receipt of multiple chunks of data, the caller has the option to "
@@ -248,7 +251,7 @@ msgid ""
 msgstr ""
 
 #. type: SS
-#: build/C/man7/epoll.7:172
+#: build/C/man7/epoll.7:176
 #, no-wrap
 msgid "/proc interfaces"
 msgstr ""
@@ -259,21 +262,21 @@ msgstr ""
 #.  This specifies an upper limit on the number of epoll instances
 #.  that can be created per real user ID.
 #. type: Plain text
-#: build/C/man7/epoll.7:180
+#: build/C/man7/epoll.7:184
 msgid ""
 "The following interfaces can be used to limit the amount of kernel memory "
 "consumed by epoll:"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:180
+#: build/C/man7/epoll.7:184
 #, no-wrap
 msgid "I</proc/sys/fs/epoll/max_user_watches> (since Linux 2.6.28)"
 msgstr ""
 
 #.  2.6.29 (in 2.6.28, the default was 1/32 of lowmem)
 #. type: Plain text
-#: build/C/man7/epoll.7:194
+#: build/C/man7/epoll.7:198
 msgid ""
 "This specifies a limit on the total number of file descriptors that a user "
 "can register across all epoll instances on the system.  The limit is per "
@@ -284,13 +287,13 @@ msgid ""
 msgstr ""
 
 #. type: SS
-#: build/C/man7/epoll.7:194
+#: build/C/man7/epoll.7:198
 #, no-wrap
-msgid "Example for Suggested Usage"
+msgid "Example for suggested usage"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:223
+#: build/C/man7/epoll.7:227
 msgid ""
 "While the usage of B<epoll> when employed as a level-triggered interface "
 "does have the same semantics as B<poll>(2), the edge-triggered usage "
@@ -305,7 +308,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:229
+#: build/C/man7/epoll.7:233
 #, no-wrap
 msgid ""
 "#define MAX_EVENTS 10\n"
@@ -314,7 +317,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:232
+#: build/C/man7/epoll.7:236
 #, no-wrap
 msgid ""
 "/* Set up listening socket, \\(aqlisten_sock\\(aq (socket(),\n"
@@ -322,7 +325,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:238
+#: build/C/man7/epoll.7:242
 #, no-wrap
 msgid ""
 "epollfd = epoll_create(10);\n"
@@ -333,7 +336,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:245
+#: build/C/man7/epoll.7:249
 #, no-wrap
 msgid ""
 "ev.events = EPOLLIN;\n"
@@ -345,7 +348,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:252
+#: build/C/man7/epoll.7:256
 #, no-wrap
 msgid ""
 "for (;;) {\n"
@@ -357,7 +360,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:274
+#: build/C/man7/epoll.7:278
 #, no-wrap
 msgid ""
 "    for (n = 0; n E<lt> nfds; ++n) {\n"
@@ -384,7 +387,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:293
+#: build/C/man7/epoll.7:297
 msgid ""
 "When used as an edge-triggered interface, for performance reasons, it is "
 "possible to add the file descriptor inside the B<epoll> interface "
@@ -394,32 +397,32 @@ msgid ""
 msgstr ""
 
 #. type: SS
-#: build/C/man7/epoll.7:293
+#: build/C/man7/epoll.7:297
 #, no-wrap
-msgid "Questions and Answers"
+msgid "Questions and answers"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:294
+#: build/C/man7/epoll.7:298
 #, no-wrap
 msgid "B<Q0>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:299
+#: build/C/man7/epoll.7:303
 msgid ""
 "What is the key used to distinguish the file descriptors registered in an "
 "B<epoll> set?"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:299
+#: build/C/man7/epoll.7:303
 #, no-wrap
 msgid "B<A0>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:305
+#: build/C/man7/epoll.7:309
 msgid ""
 "The key is the combination of the file descriptor number and the open file "
 "description (also known as an \"open file handle\", the kernel's internal "
@@ -427,20 +430,20 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:305
+#: build/C/man7/epoll.7:309
 #, no-wrap
 msgid "B<Q1>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:310
+#: build/C/man7/epoll.7:314
 msgid ""
 "What happens if you register the same file descriptor on an B<epoll> "
 "instance twice?"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:310
+#: build/C/man7/epoll.7:314
 #, no-wrap
 msgid "B<A1>"
 msgstr ""
@@ -461,7 +464,7 @@ msgstr ""
 #
 #.  mtk, Feb 2008
 #. type: Plain text
-#: build/C/man7/epoll.7:341
+#: build/C/man7/epoll.7:345
 msgid ""
 "You will probably get B<EEXIST>.  However, it is possible to add a duplicate "
 "(B<dup>(2), B<dup2>(2), B<fcntl>(2)  B<F_DUPFD>)  descriptor to the same "
@@ -471,128 +474,128 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:341
+#: build/C/man7/epoll.7:345
 #, no-wrap
 msgid "B<Q2>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:349
+#: build/C/man7/epoll.7:353
 msgid ""
 "Can two B<epoll> instances wait for the same file descriptor? If so, are "
 "events reported to both B<epoll> file descriptors?"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:349
+#: build/C/man7/epoll.7:353
 #, no-wrap
 msgid "B<A2>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:353
+#: build/C/man7/epoll.7:357
 msgid ""
 "Yes, and events would be reported to both.  However, careful programming may "
 "be needed to do this correctly."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:353
+#: build/C/man7/epoll.7:357
 #, no-wrap
 msgid "B<Q3>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:358
+#: build/C/man7/epoll.7:362
 msgid "Is the B<epoll> file descriptor itself poll/epoll/selectable?"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:358
+#: build/C/man7/epoll.7:362
 #, no-wrap
 msgid "B<A3>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:365
+#: build/C/man7/epoll.7:369
 msgid ""
 "Yes.  If an B<epoll> file descriptor has events waiting then it will "
 "indicate as being readable."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:365
+#: build/C/man7/epoll.7:369
 #, no-wrap
 msgid "B<Q4>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:370
+#: build/C/man7/epoll.7:374
 msgid ""
 "What happens if one attempts to put an B<epoll> file descriptor into its own "
 "file descriptor set?"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:370
+#: build/C/man7/epoll.7:374
 #, no-wrap
 msgid "B<A4>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:381
+#: build/C/man7/epoll.7:385
 msgid ""
 "The B<epoll_ctl>(2)  call will fail (B<EINVAL>).  However, you can add an "
 "B<epoll> file descriptor inside another B<epoll> file descriptor set."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:381
+#: build/C/man7/epoll.7:385
 #, no-wrap
 msgid "B<Q5>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:386
+#: build/C/man7/epoll.7:390
 msgid ""
 "Can I send an B<epoll> file descriptor over a UNIX domain socket to another "
 "process?"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:386
+#: build/C/man7/epoll.7:390
 #, no-wrap
 msgid "B<A5>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:392
+#: build/C/man7/epoll.7:396
 msgid ""
 "Yes, but it does not make sense to do this, since the receiving process "
 "would not have copies of the file descriptors in the B<epoll> set."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:392
+#: build/C/man7/epoll.7:396
 #, no-wrap
 msgid "B<Q6>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:397
+#: build/C/man7/epoll.7:401
 msgid ""
 "Will closing a file descriptor cause it to be removed from all B<epoll> sets "
 "automatically?"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:397
+#: build/C/man7/epoll.7:401
 #, no-wrap
 msgid "B<A6>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:425
+#: build/C/man7/epoll.7:429
 msgid ""
 "Yes, but be aware of the following point.  A file descriptor is a reference "
 "to an open file description (see B<open>(2)).  Whenever a descriptor is "
@@ -610,76 +613,76 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:425
+#: build/C/man7/epoll.7:429
 #, no-wrap
 msgid "B<Q7>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:430
+#: build/C/man7/epoll.7:434
 msgid ""
 "If more than one event occurs between B<epoll_wait>(2)  calls, are they "
 "combined or reported separately?"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:430
+#: build/C/man7/epoll.7:434
 #, no-wrap
 msgid "B<A7>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:433
+#: build/C/man7/epoll.7:437
 msgid "They will be combined."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:433
+#: build/C/man7/epoll.7:437
 #, no-wrap
 msgid "B<Q8>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:437
+#: build/C/man7/epoll.7:441
 msgid ""
 "Does an operation on a file descriptor affect the already collected but not "
 "yet reported events?"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:437
+#: build/C/man7/epoll.7:441
 #, no-wrap
 msgid "B<A8>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:443
+#: build/C/man7/epoll.7:447
 msgid ""
 "You can do two operations on an existing file descriptor.  Remove would be "
 "meaningless for this case.  Modify will reread available I/O."
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:443
+#: build/C/man7/epoll.7:447
 #, no-wrap
 msgid "B<Q9>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:451
+#: build/C/man7/epoll.7:455
 msgid ""
 "Do I need to continuously read/write a file descriptor until B<EAGAIN> when "
 "using the B<EPOLLET> flag (edge-triggered behavior) ?"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:451
+#: build/C/man7/epoll.7:455
 #, no-wrap
 msgid "B<A9>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:461
+#: build/C/man7/epoll.7:465
 msgid ""
 "Receiving an event from B<epoll_wait>(2)  should suggest to you that such "
 "file descriptor is ready for the requested I/O operation.  You must consider "
@@ -688,7 +691,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:467
+#: build/C/man7/epoll.7:471
 msgid ""
 "For packet/token-oriented files (e.g., datagram socket, terminal in "
 "canonical mode), the only way to detect the end of the read/write I/O space "
@@ -696,7 +699,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:483
+#: build/C/man7/epoll.7:487
 msgid ""
 "For stream-oriented files (e.g., pipe, FIFO, stream socket), the condition "
 "that the read/write I/O space is exhausted can also be detected by checking "
@@ -710,19 +713,19 @@ msgid ""
 msgstr ""
 
 #. type: SS
-#: build/C/man7/epoll.7:483
+#: build/C/man7/epoll.7:487
 #, no-wrap
-msgid "Possible Pitfalls and Ways to Avoid Them"
+msgid "Possible pitfalls and ways to avoid them"
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:484
+#: build/C/man7/epoll.7:488
 #, no-wrap
 msgid "B<o Starvation (edge-triggered)>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:492
+#: build/C/man7/epoll.7:496
 msgid ""
 "If there is a large amount of I/O space, it is possible that by trying to "
 "drain it the other files will not get processed causing starvation.  (This "
@@ -730,7 +733,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:500
+#: build/C/man7/epoll.7:504
 msgid ""
 "The solution is to maintain a ready list and mark the file descriptor as "
 "ready in its associated data structure, thereby allowing the application to "
@@ -740,13 +743,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man7/epoll.7:500
+#: build/C/man7/epoll.7:504
 #, no-wrap
 msgid "B<o If using an event cache...>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:516
+#: build/C/man7/epoll.7:520
 msgid ""
 "If you use an event cache or store all the file descriptors returned from "
 "B<epoll_wait>(2), then make sure to provide a way to mark its closure "
@@ -758,7 +761,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:527
+#: build/C/man7/epoll.7:531
 msgid ""
 "One solution for this is to call, during the processing of event 47, "
 "B<epoll_ctl>(B<EPOLL_CTL_DEL>)  to delete file descriptor 13 and "
@@ -769,27 +772,27 @@ msgid ""
 msgstr ""
 
 #. type: SH
-#: build/C/man7/epoll.7:527 build/C/man2/epoll_create.2:114 build/C/man2/epoll_ctl.2:224 build/C/man2/epoll_wait.2:174 build/C/man2/poll.2:286
+#: build/C/man7/epoll.7:531 build/C/man2/epoll_create.2:108 build/C/man2/epoll_ctl.2:225 build/C/man2/epoll_wait.2:177 build/C/man2/poll.2:312
 #, no-wrap
 msgid "VERSIONS"
 msgstr ""
 
 #.  Its interface should be finalized in Linux kernel 2.5.66.
 #. type: Plain text
-#: build/C/man7/epoll.7:533
+#: build/C/man7/epoll.7:537
 msgid ""
 "The B<epoll> API was introduced in Linux kernel 2.5.44.  Support was added "
 "to glibc in version 2.3.2."
 msgstr ""
 
 #. type: SH
-#: build/C/man7/epoll.7:533 build/C/man2/epoll_create.2:124 build/C/man2/epoll_ctl.2:229 build/C/man2/epoll_wait.2:184 build/C/man2/poll.2:306
+#: build/C/man7/epoll.7:537 build/C/man2/epoll_create.2:118 build/C/man2/epoll_ctl.2:230 build/C/man2/epoll_wait.2:187 build/C/man2/poll.2:329
 #, no-wrap
 msgid "CONFORMING TO"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:542
+#: build/C/man7/epoll.7:546
 msgid ""
 "The B<epoll> API is Linux-specific.  Some other systems provide similar "
 "mechanisms, for example, FreeBSD has I<kqueue>, and Solaris has "
@@ -797,55 +800,55 @@ msgid ""
 msgstr ""
 
 #. type: SH
-#: build/C/man7/epoll.7:542 build/C/man2/epoll_create.2:133 build/C/man2/epoll_ctl.2:252 build/C/man2/epoll_wait.2:187 build/C/man2/poll.2:338
+#: build/C/man7/epoll.7:546 build/C/man2/epoll_create.2:144 build/C/man2/epoll_ctl.2:253 build/C/man2/epoll_wait.2:219 build/C/man2/poll.2:366
 #, no-wrap
 msgid "SEE ALSO"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:547
+#: build/C/man7/epoll.7:551
 msgid "B<epoll_create>(2), B<epoll_create1>(2), B<epoll_ctl>(2), B<epoll_wait>(2)"
 msgstr ""
 
 #. type: SH
-#: build/C/man7/epoll.7:547 build/C/man2/epoll_create.2:138 build/C/man2/epoll_ctl.2:257 build/C/man2/epoll_wait.2:191 build/C/man2/poll.2:342
+#: build/C/man7/epoll.7:551 build/C/man2/epoll_create.2:149 build/C/man2/epoll_ctl.2:258 build/C/man2/epoll_wait.2:223 build/C/man2/poll.2:371
 #, no-wrap
 msgid "COLOPHON"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man7/epoll.7:554 build/C/man2/epoll_create.2:145 build/C/man2/epoll_ctl.2:264 build/C/man2/epoll_wait.2:198 build/C/man2/poll.2:349
+#: build/C/man7/epoll.7:558 build/C/man2/epoll_create.2:156 build/C/man2/epoll_ctl.2:265 build/C/man2/epoll_wait.2:230 build/C/man2/poll.2:378
 msgid ""
-"This page is part of release 3.38 of the Linux I<man-pages> project.  A "
+"This page is part of release 3.54 of the Linux I<man-pages> project.  A "
 "description of the project, and information about reporting bugs, can be "
-"found at http://www.kernel.org/doc/man-pages/."
+"found at \\%http://www.kernel.org/doc/man-pages/."
 msgstr ""
 
 #. type: TH
-#: build/C/man2/epoll_create.2:25
+#: build/C/man2/epoll_create.2:24
 #, no-wrap
 msgid "EPOLL_CREATE"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/epoll_create.2:25 build/C/man2/epoll_ctl.2:21 build/C/man2/epoll_wait.2:23
+#: build/C/man2/epoll_create.2:24 build/C/man2/epoll_ctl.2:20
 #, no-wrap
-msgid "2010-12-03"
+msgid "2012-04-15"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:28
+#: build/C/man2/epoll_create.2:27
 msgid "epoll_create, epoll_create1 - open an epoll file descriptor"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:31 build/C/man2/epoll_wait.2:29
+#: build/C/man2/epoll_create.2:30 build/C/man2/epoll_wait.2:28
 #, no-wrap
 msgid "B<#include E<lt>sys/epoll.hE<gt>>\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:34
+#: build/C/man2/epoll_create.2:33
 #, no-wrap
 msgid ""
 "B<int epoll_create(int >I<size>B<);>\n"
@@ -853,17 +856,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:48
+#: build/C/man2/epoll_create.2:42
 msgid ""
-"B<epoll_create>()  creates an epoll \"instance\", requesting the kernel to "
-"allocate an event backing store dimensioned for I<size> descriptors.  The "
-"I<size> is not the maximum size of the backing store but just a hint to the "
-"kernel about how to dimension internal structures.  (Nowadays, I<size> is "
-"unused; see NOTES below.)"
+"B<epoll_create>()  creates an B<epoll>(7)  instance.  Since Linux 2.6.8, the "
+"I<size> argument is ignored, but must be greater than zero; see NOTES below."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:61
+#: build/C/man2/epoll_create.2:55
 msgid ""
 "B<epoll_create>()  returns a file descriptor referring to the new epoll "
 "instance.  This file descriptor is used for all the subsequent calls to the "
@@ -873,8 +873,14 @@ msgid ""
 "destroys the instance and releases the associated resources for reuse."
 msgstr ""
 
+#. type: SS
+#: build/C/man2/epoll_create.2:55
+#, no-wrap
+msgid "epoll_create1()"
+msgstr ""
+
 #. type: Plain text
-#: build/C/man2/epoll_create.2:73
+#: build/C/man2/epoll_create.2:67
 msgid ""
 "If I<flags> is 0, then, other than the fact that the obsolete I<size> "
 "argument is dropped, B<epoll_create1>()  is the same as B<epoll_create>().  "
@@ -883,13 +889,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_create.2:73
+#: build/C/man2/epoll_create.2:67
 #, no-wrap
 msgid "B<EPOLL_CLOEXEC>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:83
+#: build/C/man2/epoll_create.2:77
 msgid ""
 "Set the close-on-exec (B<FD_CLOEXEC>)  flag on the new file descriptor.  See "
 "the description of the B<O_CLOEXEC> flag in B<open>(2)  for reasons why this "
@@ -897,48 +903,48 @@ msgid ""
 msgstr ""
 
 #. type: SH
-#: build/C/man2/epoll_create.2:83 build/C/man2/epoll_ctl.2:156 build/C/man2/epoll_wait.2:137 build/C/man2/poll.2:257
+#: build/C/man2/epoll_create.2:77 build/C/man2/epoll_ctl.2:157 build/C/man2/epoll_wait.2:140 build/C/man2/poll.2:283
 #, no-wrap
 msgid "RETURN VALUE"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:90
+#: build/C/man2/epoll_create.2:84
 msgid ""
 "On success, these system calls return a nonnegative file descriptor.  On "
 "error, -1 is returned, and I<errno> is set to indicate the error."
 msgstr ""
 
 #. type: SH
-#: build/C/man2/epoll_create.2:90 build/C/man2/epoll_ctl.2:165 build/C/man2/epoll_wait.2:149 build/C/man2/poll.2:267
+#: build/C/man2/epoll_create.2:84 build/C/man2/epoll_ctl.2:166 build/C/man2/epoll_wait.2:152 build/C/man2/poll.2:293
 #, no-wrap
 msgid "ERRORS"
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_create.2:91 build/C/man2/epoll_create.2:95 build/C/man2/epoll_ctl.2:180 build/C/man2/epoll_wait.2:166 build/C/man2/poll.2:276
+#: build/C/man2/epoll_create.2:85 build/C/man2/epoll_create.2:89 build/C/man2/epoll_ctl.2:181 build/C/man2/epoll_wait.2:169 build/C/man2/poll.2:302
 #, no-wrap
 msgid "B<EINVAL>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:95
+#: build/C/man2/epoll_create.2:89
 msgid "I<size> is not positive."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:100
+#: build/C/man2/epoll_create.2:94
 msgid "(B<epoll_create1>())  Invalid value specified in I<flags>."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_create.2:100
+#: build/C/man2/epoll_create.2:94
 #, no-wrap
 msgid "B<EMFILE>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:108
+#: build/C/man2/epoll_create.2:102
 msgid ""
 "The per-user limit on the number of epoll instances imposed by "
 "I</proc/sys/fs/epoll/max_user_instances> was encountered.  See B<epoll>(7)  "
@@ -946,29 +952,29 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_create.2:108
+#: build/C/man2/epoll_create.2:102
 #, no-wrap
 msgid "B<ENFILE>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:111
+#: build/C/man2/epoll_create.2:105
 msgid "The system limit on the total number of open files has been reached."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_create.2:111 build/C/man2/epoll_ctl.2:203 build/C/man2/poll.2:283
+#: build/C/man2/epoll_create.2:105 build/C/man2/epoll_ctl.2:204 build/C/man2/poll.2:309
 #, no-wrap
 msgid "B<ENOMEM>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:114
+#: build/C/man2/epoll_create.2:108
 msgid "There was insufficient memory to create the kernel object."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:118
+#: build/C/man2/epoll_create.2:112
 msgid ""
 "B<epoll_create>()  was added to the kernel in version 2.6.  Library support "
 "is provided in glibc starting with version 2.3.2."
@@ -977,75 +983,82 @@ msgstr ""
 #.  To be precise: kernel 2.5.44.
 #.  The interface should be finalized by Linux kernel 2.5.66.
 #. type: Plain text
-#: build/C/man2/epoll_create.2:124
+#: build/C/man2/epoll_create.2:118
 msgid ""
 "B<epoll_create1>()  was added to the kernel in version 2.6.27.  Library "
 "support is provided in glibc starting with version 2.9."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:127
+#: build/C/man2/epoll_create.2:121
 msgid "B<epoll_create>()  is Linux-specific."
 msgstr ""
 
 #. type: SH
-#: build/C/man2/epoll_create.2:127 build/C/man2/epoll_ctl.2:233 build/C/man2/poll.2:312
+#: build/C/man2/epoll_create.2:121 build/C/man2/epoll_ctl.2:234 build/C/man2/epoll_wait.2:190 build/C/man2/poll.2:335
 #, no-wrap
 msgid "NOTES"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:133
+#: build/C/man2/epoll_create.2:144
 msgid ""
-"Since Linux 2.6.8, the I<size> argument is unused, but must be greater than "
-"zero.  (The kernel dynamically sizes the required data structures without "
-"needing this initial hint.)"
+"In the initial B<epoll_create>()  implementation, the I<size> argument "
+"informed the kernel of the number of file descriptors that the caller "
+"expected to add to the B<epoll> instance.  The kernel used this information "
+"as a hint for the amount of space to initially allocate in internal data "
+"structures describing events.  (If necessary, the kernel would allocate more "
+"space if the caller's usage exceeded the hint given in I<size>.)  Nowadays, "
+"this hint is no longer required (the kernel dynamically sizes the required "
+"data structures without needing the hint), but I<size> must still be greater "
+"than zero, in order to ensure backward compatibility when new B<epoll> "
+"applications are run on older kernels."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_create.2:138
+#: build/C/man2/epoll_create.2:149
 msgid "B<close>(2), B<epoll_ctl>(2), B<epoll_wait>(2), B<epoll>(7)"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/epoll_ctl.2:21
+#: build/C/man2/epoll_ctl.2:20
 #, no-wrap
 msgid "EPOLL_CTL"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:24
+#: build/C/man2/epoll_ctl.2:23
 msgid "epoll_ctl - control interface for an epoll descriptor"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:29
+#: build/C/man2/epoll_ctl.2:28
 msgid ""
 "B<int epoll_ctl(int >I<epfd>B<, int >I<op>B<, int >I<fd>B<, struct "
 "epoll_event *>I<event>B<);>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:37
+#: build/C/man2/epoll_ctl.2:38
 msgid ""
-"This system call performs control operations on the epoll instance referred "
-"to by the file descriptor I<epfd>.  It requests that the operation I<op> be "
-"performed for the target file descriptor, I<fd>."
+"This system call performs control operations on the B<epoll>(7)  instance "
+"referred to by the file descriptor I<epfd>.  It requests that the operation "
+"I<op> be performed for the target file descriptor, I<fd>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:41
+#: build/C/man2/epoll_ctl.2:42
 msgid "Valid values for the I<op> argument are :"
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:41
+#: build/C/man2/epoll_ctl.2:42
 #, no-wrap
 msgid "B<EPOLL_CTL_ADD>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:53
+#: build/C/man2/epoll_ctl.2:54
 msgid ""
 "Register the target file descriptor I<fd> on the B<epoll> instance referred "
 "to by the file descriptor I<epfd> and associate the event I<event> with the "
@@ -1053,24 +1066,24 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:53
+#: build/C/man2/epoll_ctl.2:54
 #, no-wrap
 msgid "B<EPOLL_CTL_MOD>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:59
+#: build/C/man2/epoll_ctl.2:60
 msgid "Change the event I<event> associated with the target file descriptor I<fd>."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:59
+#: build/C/man2/epoll_ctl.2:60
 #, no-wrap
 msgid "B<EPOLL_CTL_DEL>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:70
+#: build/C/man2/epoll_ctl.2:71
 msgid ""
 "Remove (deregister) the target file descriptor I<fd> from the B<epoll> "
 "instance referred to by I<epfd>.  The I<event> is ignored and can be NULL "
@@ -1078,14 +1091,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:78
+#: build/C/man2/epoll_ctl.2:79
 msgid ""
 "The I<event> argument describes the object linked to the file descriptor "
 "I<fd>.  The I<struct epoll_event> is defined as :"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:87
+#: build/C/man2/epoll_ctl.2:88
 #, no-wrap
 msgid ""
 "typedef union epoll_data {\n"
@@ -1097,7 +1110,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:92
+#: build/C/man2/epoll_ctl.2:93
 #, no-wrap
 msgid ""
 "struct epoll_event {\n"
@@ -1107,42 +1120,42 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:99
+#: build/C/man2/epoll_ctl.2:100
 msgid ""
 "The I<events> member is a bit set composed using the following available "
 "event types:"
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:99
+#: build/C/man2/epoll_ctl.2:100
 #, no-wrap
 msgid "B<EPOLLIN>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:104
+#: build/C/man2/epoll_ctl.2:105
 msgid "The associated file is available for B<read>(2)  operations."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:104
+#: build/C/man2/epoll_ctl.2:105
 #, no-wrap
 msgid "B<EPOLLOUT>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:109
+#: build/C/man2/epoll_ctl.2:110
 msgid "The associated file is available for B<write>(2)  operations."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:109
+#: build/C/man2/epoll_ctl.2:110
 #, no-wrap
 msgid "B<EPOLLRDHUP> (since Linux 2.6.17)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:115
+#: build/C/man2/epoll_ctl.2:116
 msgid ""
 "Stream socket peer closed connection, or shut down writing half of "
 "connection.  (This flag is especially useful for writing simple code to "
@@ -1150,24 +1163,24 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:115
+#: build/C/man2/epoll_ctl.2:116
 #, no-wrap
 msgid "B<EPOLLPRI>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:120
+#: build/C/man2/epoll_ctl.2:121
 msgid "There is urgent data available for B<read>(2)  operations."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:120
+#: build/C/man2/epoll_ctl.2:121
 #, no-wrap
 msgid "B<EPOLLERR>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:126
+#: build/C/man2/epoll_ctl.2:127
 msgid ""
 "Error condition happened on the associated file descriptor.  "
 "B<epoll_wait>(2)  will always wait for this event; it is not necessary to "
@@ -1175,26 +1188,26 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:126
+#: build/C/man2/epoll_ctl.2:127
 #, no-wrap
 msgid "B<EPOLLHUP>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:132
+#: build/C/man2/epoll_ctl.2:133
 msgid ""
 "Hang up happened on the associated file descriptor.  B<epoll_wait>(2)  will "
 "always wait for this event; it is not necessary to set it in I<events>."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:132
+#: build/C/man2/epoll_ctl.2:133
 #, no-wrap
 msgid "B<EPOLLET>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:142
+#: build/C/man2/epoll_ctl.2:143
 msgid ""
 "Sets the Edge Triggered behavior for the associated file descriptor.  The "
 "default behavior for B<epoll> is Level Triggered.  See B<epoll>(7)  for more "
@@ -1203,13 +1216,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:142
+#: build/C/man2/epoll_ctl.2:143
 #, no-wrap
 msgid "B<EPOLLONESHOT> (since Linux 2.6.2)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:156
+#: build/C/man2/epoll_ctl.2:157
 msgid ""
 "Sets the one-shot behavior for the associated file descriptor.  This means "
 "that after an event is pulled out with B<epoll_wait>(2)  the associated file "
@@ -1219,71 +1232,71 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:165
+#: build/C/man2/epoll_ctl.2:166
 msgid ""
 "When successful, B<epoll_ctl>()  returns zero.  When an error occurs, "
 "B<epoll_ctl>()  returns -1 and I<errno> is set appropriately."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:166 build/C/man2/epoll_wait.2:150
+#: build/C/man2/epoll_ctl.2:167 build/C/man2/epoll_wait.2:153
 #, no-wrap
 msgid "B<EBADF>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:172
+#: build/C/man2/epoll_ctl.2:173
 msgid "I<epfd> or I<fd> is not a valid file descriptor."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:172
+#: build/C/man2/epoll_ctl.2:173
 #, no-wrap
 msgid "B<EEXIST>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:180
+#: build/C/man2/epoll_ctl.2:181
 msgid ""
 "I<op> was B<EPOLL_CTL_ADD>, and the supplied file descriptor I<fd> is "
 "already registered with this epoll instance."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:193
+#: build/C/man2/epoll_ctl.2:194
 msgid ""
 "I<epfd> is not an B<epoll> file descriptor, or I<fd> is the same as I<epfd>, "
 "or the requested operation I<op> is not supported by this interface."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:193
+#: build/C/man2/epoll_ctl.2:194
 #, no-wrap
 msgid "B<ENOENT>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:203
+#: build/C/man2/epoll_ctl.2:204
 msgid ""
 "I<op> was B<EPOLL_CTL_MOD> or B<EPOLL_CTL_DEL>, and I<fd> is not registered "
 "with this epoll instance."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:208
+#: build/C/man2/epoll_ctl.2:209
 msgid ""
 "There was insufficient memory to handle the requested I<op> control "
 "operation."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:208
+#: build/C/man2/epoll_ctl.2:209
 #, no-wrap
 msgid "B<ENOSPC>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:218
+#: build/C/man2/epoll_ctl.2:219
 msgid ""
 "The limit imposed by I</proc/sys/fs/epoll/max_user_watches> was encountered "
 "while trying to register (B<EPOLL_CTL_ADD>)  a new file descriptor on an "
@@ -1291,45 +1304,45 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_ctl.2:218
+#: build/C/man2/epoll_ctl.2:219
 #, no-wrap
 msgid "B<EPERM>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:224
+#: build/C/man2/epoll_ctl.2:225
 msgid "The target file I<fd> does not support B<epoll>."
 msgstr ""
 
 #.  To be precise: kernel 2.5.44.
 #.  The interface should be finalized by Linux kernel 2.5.66.
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:229
+#: build/C/man2/epoll_ctl.2:230
 msgid "B<epoll_ctl>()  was added to the kernel in version 2.6."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:233
+#: build/C/man2/epoll_ctl.2:234
 msgid ""
 "B<epoll_ctl>()  is Linux-specific.  Library support is provided in glibc "
 "starting with version 2.3.2."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:238
+#: build/C/man2/epoll_ctl.2:239
 msgid ""
 "The B<epoll> interface supports all file descriptors that support "
 "B<poll>(2)."
 msgstr ""
 
 #. type: SH
-#: build/C/man2/epoll_ctl.2:238 build/C/man2/poll.2:334
+#: build/C/man2/epoll_ctl.2:239 build/C/man2/epoll_wait.2:207 build/C/man2/poll.2:362
 #, no-wrap
 msgid "BUGS"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:252
+#: build/C/man2/epoll_ctl.2:253
 msgid ""
 "In kernel versions before 2.6.9, the B<EPOLL_CTL_DEL> operation required a "
 "non-NULL pointer in I<event>, even though this argument is ignored.  Since "
@@ -1339,23 +1352,29 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_ctl.2:257
+#: build/C/man2/epoll_ctl.2:258
 msgid "B<epoll_create>(2), B<epoll_wait>(2), B<poll>(2), B<epoll>(7)"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/epoll_wait.2:23
+#: build/C/man2/epoll_wait.2:22
 #, no-wrap
 msgid "EPOLL_WAIT"
 msgstr ""
 
+#. type: TH
+#: build/C/man2/epoll_wait.2:22
+#, no-wrap
+msgid "2012-08-17"
+msgstr ""
+
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:26
+#: build/C/man2/epoll_wait.2:25
 msgid "epoll_wait, epoll_pwait - wait for an I/O event on an epoll file descriptor"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:35
+#: build/C/man2/epoll_wait.2:34
 #, no-wrap
 msgid ""
 "B<int epoll_wait(int >I<epfd>B<, struct epoll_event *>I<events>B<,>\n"
@@ -1366,31 +1385,34 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:53
+#: build/C/man2/epoll_wait.2:52
 msgid ""
-"The B<epoll_wait>()  system call waits for events on the B<epoll> instance "
-"referred to by the file descriptor I<epfd>.  The memory area pointed to by "
-"I<events> will contain the events that will be available for the caller.  Up "
-"to I<maxevents> are returned by B<epoll_wait>().  The I<maxevents> argument "
-"must be greater than zero."
+"The B<epoll_wait>()  system call waits for events on the B<epoll>(7)  "
+"instance referred to by the file descriptor I<epfd>.  The memory area "
+"pointed to by I<events> will contain the events that will be available for "
+"the caller.  Up to I<maxevents> are returned by B<epoll_wait>().  The "
+"I<maxevents> argument must be greater than zero."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:67
+#: build/C/man2/epoll_wait.2:70
 msgid ""
-"The call waits for a maximum time of I<timeout> milliseconds.  Specifying a "
-"I<timeout> of -1 makes B<epoll_wait>()  wait indefinitely, while specifying "
-"a I<timeout> equal to zero makes B<epoll_wait>()  to return immediately even "
-"if no events are available (return code equal to zero)."
+"The I<timeout> argument specifies the minimum number of milliseconds that "
+"B<epoll_wait>()  will block.  (This interval will be rounded up to the "
+"system clock granularity, and kernel scheduling delays mean that the "
+"blocking interval may overrun by a small amount.)  Specifying a I<timeout> "
+"of -1 causes B<epoll_wait>()  to block indefinitely, while specifying a "
+"I<timeout> equal to zero cause B<epoll_wait>()  to return immediately, even "
+"if no events are available."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:71
+#: build/C/man2/epoll_wait.2:74
 msgid "The I<struct epoll_event> is defined as :"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:80
+#: build/C/man2/epoll_wait.2:83
 #, no-wrap
 msgid ""
 "typedef union epoll_data {\n"
@@ -1402,7 +1424,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:85
+#: build/C/man2/epoll_wait.2:88
 #, no-wrap
 msgid ""
 "struct epoll_event {\n"
@@ -1412,21 +1434,21 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:96
+#: build/C/man2/epoll_wait.2:99
 msgid ""
 "The I<data> of each returned structure will contain the same data the user "
-"set with an B<epoll_ctl>(2)  (B<EPOLL_CTL_ADD>,B<EPOLL_CTL_MOD>)  while the "
+"set with an B<epoll_ctl>(2)  (B<EPOLL_CTL_ADD>, B<EPOLL_CTL_MOD>)  while the "
 "I<events> member will contain the returned event bit field."
 msgstr ""
 
 #. type: SS
-#: build/C/man2/epoll_wait.2:96
+#: build/C/man2/epoll_wait.2:99
 #, no-wrap
 msgid "epoll_pwait()"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:110
+#: build/C/man2/epoll_wait.2:113
 msgid ""
 "The relationship between B<epoll_wait>()  and B<epoll_pwait>()  is analogous "
 "to the relationship between B<select>(2)  and B<pselect>(2): like "
@@ -1435,29 +1457,29 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:114
+#: build/C/man2/epoll_wait.2:117
 msgid "The following B<epoll_pwait>()  call:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:117
+#: build/C/man2/epoll_wait.2:120
 #, no-wrap
 msgid "    ready = epoll_pwait(epfd, &events, maxevents, timeout, &sigmask);\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:122 build/C/man2/poll.2:206
+#: build/C/man2/epoll_wait.2:125 build/C/man2/poll.2:232
 msgid "is equivalent to I<atomically> executing the following calls:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:125
+#: build/C/man2/epoll_wait.2:128
 #, no-wrap
 msgid "    sigset_t origmask;\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:129
+#: build/C/man2/epoll_wait.2:132
 #, no-wrap
 msgid ""
 "    sigprocmask(SIG_SETMASK, &sigmask, &origmask);\n"
@@ -1466,14 +1488,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:137
+#: build/C/man2/epoll_wait.2:140
 msgid ""
 "The I<sigmask> argument may be specified as NULL, in which case "
 "B<epoll_pwait>()  is equivalent to B<epoll_wait>()."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:149
+#: build/C/man2/epoll_wait.2:152
 msgid ""
 "When successful, B<epoll_wait>()  returns the number of file descriptors "
 "ready for the requested I/O, or zero if no file descriptor became ready "
@@ -1482,38 +1504,38 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:154
+#: build/C/man2/epoll_wait.2:157
 msgid "I<epfd> is not a valid file descriptor."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_wait.2:154 build/C/man2/poll.2:268
+#: build/C/man2/epoll_wait.2:157 build/C/man2/poll.2:294
 #, no-wrap
 msgid "B<EFAULT>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:159
+#: build/C/man2/epoll_wait.2:162
 msgid ""
 "The memory area pointed to by I<events> is not accessible with write "
 "permissions."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/epoll_wait.2:159 build/C/man2/poll.2:272
+#: build/C/man2/epoll_wait.2:162 build/C/man2/poll.2:298
 #, no-wrap
 msgid "B<EINTR>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:166
+#: build/C/man2/epoll_wait.2:169
 msgid ""
-"The call was interrupted by a signal handler before any of the requested "
-"events occurred or the I<timeout> expired; see B<signal>(7)."
+"The call was interrupted by a signal handler before either any of the "
+"requested events occurred or the I<timeout> expired; see B<signal>(7)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:174
+#: build/C/man2/epoll_wait.2:177
 msgid ""
 "I<epfd> is not an B<epoll> file descriptor, or I<maxevents> is less than or "
 "equal to zero."
@@ -1522,26 +1544,53 @@ msgstr ""
 #.  To be precise: kernel 2.5.44.
 #.  The interface should be finalized by Linux kernel 2.5.66.
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:180
+#: build/C/man2/epoll_wait.2:183
 msgid ""
 "B<epoll_wait>()  was added to the kernel in version 2.6.  Library support is "
 "provided in glibc starting with version 2.3.2."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:184
+#: build/C/man2/epoll_wait.2:187
 msgid ""
 "B<epoll_pwait>()  was added to Linux in kernel 2.6.19.  Library support is "
 "provided in glibc starting with version 2.6."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:187
+#: build/C/man2/epoll_wait.2:190
 msgid "B<epoll_wait>()  is Linux-specific."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/epoll_wait.2:191
+#: build/C/man2/epoll_wait.2:200
+msgid ""
+"While one thread is blocked in a call to B<epoll_pwait>(), it is possible "
+"for another thread to add a file descriptor to the waited-upon B<epoll> "
+"instance.  If the new file descriptor becomes ready, it will cause the "
+"B<epoll_wait>()  call to unblock."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/epoll_wait.2:207
+msgid ""
+"For a discussion of what may happen if a file descriptor in an B<epoll> "
+"instance being monitored by B<epoll_wait>()  is closed in another thread, "
+"see B<select>(2)."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/epoll_wait.2:219
+msgid ""
+"In kernels before 2.6.37, a I<timeout> value larger than approximately "
+"I<LONG_MAX / HZ> milliseconds is treated as -1 (i.e., infinity).  Thus, for "
+"example, on a system where the I<sizeof(long)> is 4 and the kernel I<HZ> "
+"value is 1000, this means that timeouts greater than 35.79 minutes are "
+"treated as infinity."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/epoll_wait.2:223
 msgid "B<epoll_create>(2), B<epoll_ctl>(2), B<epoll>(7)"
 msgstr ""
 
@@ -1554,7 +1603,7 @@ msgstr ""
 #. type: TH
 #: build/C/man2/poll.2:31
 #, no-wrap
-msgid "2010-09-20"
+msgid "2013-09-04"
 msgstr ""
 
 #. type: Plain text
@@ -1626,19 +1675,26 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:75
-msgid "The field I<fd> contains a file descriptor for an open file."
+#: build/C/man2/poll.2:86
+msgid ""
+"The field I<fd> contains a file descriptor for an open file.  If this field "
+"is negative, then the corresponding I<events> field is ignored and the "
+"I<revents> field returns zero.  (This provides an easy way of ignoring a "
+"file descriptor for a single B<poll>()  call: simply negate the I<fd> "
+"field.)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:80
+#: build/C/man2/poll.2:98
 msgid ""
 "The field I<events> is an input parameter, a bit mask specifying the events "
-"the application is interested in."
+"the application is interested in for the file descriptor I<fd>.  If this "
+"field is specified as zero, then all events are ignored for I<fd> and "
+"I<revents> returns zero."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:99
+#: build/C/man2/poll.2:117
 msgid ""
 "The field I<revents> is an output parameter, filled by the kernel with the "
 "events that actually occurred.  The bits returned in I<revents> can include "
@@ -1649,70 +1705,74 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:104
+#: build/C/man2/poll.2:122
 msgid ""
 "If none of the events requested (and no error) has occurred for any of the "
 "file descriptors, then B<poll>()  blocks until one of the events occurs."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:113
+#: build/C/man2/poll.2:139
 msgid ""
-"The I<timeout> argument specifies an upper limit on the time for which "
-"B<poll>()  will block, in milliseconds.  Specifying a negative value in "
-"I<timeout> means an infinite timeout."
+"The I<timeout> argument specifies the number of milliseconds that B<poll>()  "
+"should block waiting for a file descriptor to become ready.  This interval "
+"will be rounded up to the system clock granularity, and kernel scheduling "
+"delays mean that the blocking interval may overrun by a small amount.  "
+"Specifying a negative value in I<timeout> means an infinite timeout.  "
+"Specifying a I<timeout> of zero causes B<poll>()  to return immediately, "
+"even if no file descriptors are ready."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:119
+#: build/C/man2/poll.2:145
 msgid ""
 "The bits that may be set/returned in I<events> and I<revents> are defined in "
 "I<E<lt>poll.hE<gt>>:"
 msgstr ""
 
 #. type: TP
-#: build/C/man2/poll.2:120
+#: build/C/man2/poll.2:146
 #, no-wrap
 msgid "B<POLLIN>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:123
+#: build/C/man2/poll.2:149
 msgid "There is data to read."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/poll.2:123
+#: build/C/man2/poll.2:149
 #, no-wrap
 msgid "B<POLLPRI>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:127
+#: build/C/man2/poll.2:153
 msgid ""
 "There is urgent data to read (e.g., out-of-band data on TCP socket; "
 "pseudoterminal master in packet mode has seen state change in slave)."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/poll.2:127
+#: build/C/man2/poll.2:153
 #, no-wrap
 msgid "B<POLLOUT>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:130
+#: build/C/man2/poll.2:156
 msgid "Writing now will not block."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/poll.2:130
+#: build/C/man2/poll.2:156
 #, no-wrap
 msgid "B<POLLRDHUP> (since Linux 2.6.17)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:141
+#: build/C/man2/poll.2:167
 msgid ""
 "Stream socket peer closed connection, or shut down writing half of "
 "connection.  The B<_GNU_SOURCE> feature test macro must be defined (before "
@@ -1720,103 +1780,103 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/poll.2:141
+#: build/C/man2/poll.2:167
 #, no-wrap
 msgid "B<POLLERR>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:144
+#: build/C/man2/poll.2:170
 msgid "Error condition (output only)."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/poll.2:144
+#: build/C/man2/poll.2:170
 #, no-wrap
 msgid "B<POLLHUP>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:147
+#: build/C/man2/poll.2:173
 msgid "Hang up (output only)."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/poll.2:147
+#: build/C/man2/poll.2:173
 #, no-wrap
 msgid "B<POLLNVAL>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:152
+#: build/C/man2/poll.2:178
 msgid "Invalid request: I<fd> not open (output only)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:158
+#: build/C/man2/poll.2:184
 msgid ""
 "When compiling with B<_XOPEN_SOURCE> defined, one also has the following, "
 "which convey no further information beyond the bits listed above:"
 msgstr ""
 
 #. type: TP
-#: build/C/man2/poll.2:159
+#: build/C/man2/poll.2:185
 #, no-wrap
 msgid "B<POLLRDNORM>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:163
+#: build/C/man2/poll.2:189
 msgid "Equivalent to B<POLLIN>."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/poll.2:163
+#: build/C/man2/poll.2:189
 #, no-wrap
 msgid "B<POLLRDBAND>"
 msgstr ""
 
 #.  POLLRDBAND is used in the DECnet protocol.
 #. type: Plain text
-#: build/C/man2/poll.2:167
+#: build/C/man2/poll.2:193
 msgid "Priority band data can be read (generally unused on Linux)."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/poll.2:167
+#: build/C/man2/poll.2:193
 #, no-wrap
 msgid "B<POLLWRNORM>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:171
+#: build/C/man2/poll.2:197
 msgid "Equivalent to B<POLLOUT>."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/poll.2:171
+#: build/C/man2/poll.2:197
 #, no-wrap
 msgid "B<POLLWRBAND>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:174
+#: build/C/man2/poll.2:200
 msgid "Priority data may be written."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:178
+#: build/C/man2/poll.2:204
 msgid "Linux also knows about, but does not use B<POLLMSG>."
 msgstr ""
 
 #. type: SS
-#: build/C/man2/poll.2:178
+#: build/C/man2/poll.2:204
 #, no-wrap
 msgid "ppoll()"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:192
+#: build/C/man2/poll.2:218
 msgid ""
 "The relationship between B<poll>()  and B<ppoll>()  is analogous to the "
 "relationship between B<select>(2)  and B<pselect>(2): like B<pselect>(2), "
@@ -1825,20 +1885,20 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:198
+#: build/C/man2/poll.2:224
 msgid ""
 "Other than the difference in the precision of the I<timeout> argument, the "
 "following B<ppoll>()  call:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:201
+#: build/C/man2/poll.2:227
 #, no-wrap
 msgid "    ready = ppoll(&fds, nfds, timeout_ts, &sigmask);\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:210
+#: build/C/man2/poll.2:236
 #, no-wrap
 msgid ""
 "    sigset_t origmask;\n"
@@ -1846,7 +1906,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:216
+#: build/C/man2/poll.2:242
 #, no-wrap
 msgid ""
 "    timeout = (timeout_ts == NULL) ? -1 :\n"
@@ -1857,14 +1917,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:223
+#: build/C/man2/poll.2:249
 msgid ""
 "See the description of B<pselect>(2)  for an explanation of why B<ppoll>()  "
 "is necessary."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:235
+#: build/C/man2/poll.2:261
 msgid ""
 "If the I<sigmask> argument is specified as NULL, then no signal mask "
 "manipulation is performed (and thus B<ppoll>()  differs from B<poll>()  only "
@@ -1872,7 +1932,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:242
+#: build/C/man2/poll.2:268
 msgid ""
 "The I<timeout_ts> argument specifies an upper limit on the amount of time "
 "that B<ppoll>()  will block.  This argument is a pointer to a structure of "
@@ -1880,7 +1940,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:249
+#: build/C/man2/poll.2:275
 #, no-wrap
 msgid ""
 "struct timespec {\n"
@@ -1890,14 +1950,14 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:257
+#: build/C/man2/poll.2:283
 msgid ""
 "If I<timeout_ts> is specified as NULL, then B<ppoll>()  can block "
 "indefinitely."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:267
+#: build/C/man2/poll.2:293
 msgid ""
 "On success, a positive number is returned; this is the number of structures "
 "which have nonzero I<revents> fields (in other words, those descriptors with "
@@ -1907,37 +1967,38 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:272
+#: build/C/man2/poll.2:298
 msgid ""
 "The array given as argument was not contained in the calling program's "
 "address space."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:276
+#: build/C/man2/poll.2:302
 msgid "A signal occurred before any requested event; see B<signal>(7)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:283
+#: build/C/man2/poll.2:309
 msgid "The I<nfds> value exceeds the B<RLIMIT_NOFILE> value."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:286
+#: build/C/man2/poll.2:312
 msgid "There was no space to allocate file descriptor tables."
 msgstr ""
 
+#.  library call was introduced in libc 5.4.28
 #. type: Plain text
-#: build/C/man2/poll.2:299
+#: build/C/man2/poll.2:322
 msgid ""
-"The B<poll>()  system call was introduced in Linux 2.1.23.  The B<poll>()  "
-"library call was introduced in libc 5.4.28 (and provides emulation using "
-"B<select>(2)  if your kernel does not have a B<poll>()  system call)."
+"The B<poll>()  system call was introduced in Linux 2.1.23.  On older kernels "
+"that lack this system call, the glibc (and the old Linux libc)  B<poll>()  "
+"wrapper function provides emulation using B<select>(2)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:306
+#: build/C/man2/poll.2:329
 msgid ""
 "The B<ppoll>()  system call was added to Linux in kernel 2.6.16.  The "
 "B<ppoll>()  library call was added in glibc 2.4."
@@ -1945,26 +2006,33 @@ msgstr ""
 
 #.  NetBSD 3.0 has a pollts() which is like Linux ppoll().
 #. type: Plain text
-#: build/C/man2/poll.2:312
+#: build/C/man2/poll.2:335
 msgid "B<poll>()  conforms to POSIX.1-2001.  B<ppoll>()  is Linux-specific."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:320
+#: build/C/man2/poll.2:343
 msgid ""
 "Some implementations define the nonstandard constant B<INFTIM> with the "
 "value -1 for use as a I<timeout> for B<poll>().  This constant is not "
 "provided in glibc."
 msgstr ""
 
+#. type: Plain text
+#: build/C/man2/poll.2:348
+msgid ""
+"For a discussion of what may happen if a file descriptor being monitored by "
+"B<poll>()  is closed in another thread, see B<select>(2)."
+msgstr ""
+
 #. type: SS
-#: build/C/man2/poll.2:320
+#: build/C/man2/poll.2:348
 #, no-wrap
-msgid "Linux Notes"
+msgid "Linux notes"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:334
+#: build/C/man2/poll.2:362
 msgid ""
 "The Linux B<ppoll>()  system call modifies its I<timeout_ts> argument.  "
 "However, the glibc wrapper function hides this behavior by using a local "
@@ -1973,13 +2041,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:338
+#: build/C/man2/poll.2:366
 msgid ""
 "See the discussion of spurious readiness notifications under the BUGS "
 "section of B<select>(2)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/poll.2:342
-msgid "B<select>(2), B<select_tut>(2), B<time>(7)"
+#: build/C/man2/poll.2:371
+msgid "B<restart_syscall>(2), B<select>(2), B<select_tut>(2), B<time>(7)"
 msgstr ""