OSDN Git Service

(split) LDP: Update POT and ja.po to LDP v3.54
[linuxjm/LDP_man-pages.git] / po4a / semaphore / po / semaphore.pot
index b6ec184..48e3cf4 100644 (file)
@@ -7,7 +7,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2012-03-19 23:50+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"
@@ -23,25 +23,25 @@ msgid "SEM_CLOSE"
 msgstr ""
 
 #. type: TH
-#: build/C/man3/sem_close.3:26 build/C/man3/sem_destroy.3:26 build/C/man3/sem_getvalue.3:26 build/C/man3/sem_unlink.3:26
+#: build/C/man3/sem_close.3:26 build/C/man3/sem_destroy.3:26 build/C/man3/sem_getvalue.3:26 build/C/man3/sem_init.3:26 build/C/man3/sem_open.3:26 build/C/man7/sem_overview.7:26 build/C/man3/sem_post.3:26 build/C/man3/sem_unlink.3:26 build/C/man3/sem_wait.3:26
 #, no-wrap
-msgid "2006-03-25"
+msgid "2012-05-13"
 msgstr ""
 
 #. type: TH
-#: build/C/man3/sem_close.3:26 build/C/man3/sem_destroy.3:26 build/C/man3/sem_getvalue.3:26 build/C/man3/sem_init.3:26 build/C/man3/sem_open.3:26 build/C/man7/sem_overview.7:26 build/C/man3/sem_post.3:26 build/C/man3/sem_unlink.3:26 build/C/man3/sem_wait.3:26 build/C/man2/semctl.2:39 build/C/man2/semget.2:34 build/C/man2/semop.2:33
+#: build/C/man3/sem_close.3:26 build/C/man3/sem_destroy.3:26 build/C/man3/sem_getvalue.3:26 build/C/man3/sem_init.3:26 build/C/man3/sem_open.3:26 build/C/man7/sem_overview.7:26 build/C/man3/sem_post.3:26 build/C/man3/sem_unlink.3:26 build/C/man3/sem_wait.3:26 build/C/man2/semctl.2:41 build/C/man2/semget.2:36 build/C/man2/semop.2:35
 #, no-wrap
 msgid "Linux"
 msgstr ""
 
 #. type: TH
-#: build/C/man3/sem_close.3:26 build/C/man3/sem_destroy.3:26 build/C/man3/sem_getvalue.3:26 build/C/man3/sem_init.3:26 build/C/man3/sem_open.3:26 build/C/man7/sem_overview.7:26 build/C/man3/sem_post.3:26 build/C/man3/sem_unlink.3:26 build/C/man3/sem_wait.3:26 build/C/man2/semctl.2:39 build/C/man2/semget.2:34 build/C/man2/semop.2:33
+#: build/C/man3/sem_close.3:26 build/C/man3/sem_destroy.3:26 build/C/man3/sem_getvalue.3:26 build/C/man3/sem_init.3:26 build/C/man3/sem_open.3:26 build/C/man7/sem_overview.7:26 build/C/man3/sem_post.3:26 build/C/man3/sem_unlink.3:26 build/C/man3/sem_wait.3:26 build/C/man2/semctl.2:41 build/C/man2/semget.2:36 build/C/man2/semop.2:35
 #, no-wrap
 msgid "Linux Programmer's Manual"
 msgstr ""
 
 #. type: SH
-#: build/C/man3/sem_close.3:27 build/C/man3/sem_destroy.3:27 build/C/man3/sem_getvalue.3:27 build/C/man3/sem_init.3:27 build/C/man3/sem_open.3:27 build/C/man7/sem_overview.7:27 build/C/man3/sem_post.3:27 build/C/man3/sem_unlink.3:27 build/C/man3/sem_wait.3:27 build/C/man2/semctl.2:40 build/C/man2/semget.2:35 build/C/man2/semop.2:34
+#: build/C/man3/sem_close.3:27 build/C/man3/sem_destroy.3:27 build/C/man3/sem_getvalue.3:27 build/C/man3/sem_init.3:27 build/C/man3/sem_open.3:27 build/C/man7/sem_overview.7:27 build/C/man3/sem_post.3:27 build/C/man3/sem_unlink.3:27 build/C/man3/sem_wait.3:27 build/C/man2/semctl.2:42 build/C/man2/semget.2:37 build/C/man2/semop.2:36
 #, no-wrap
 msgid "NAME"
 msgstr ""
@@ -52,7 +52,7 @@ msgid "sem_close - close a named semaphore"
 msgstr ""
 
 #. type: SH
-#: build/C/man3/sem_close.3:29 build/C/man3/sem_destroy.3:29 build/C/man3/sem_getvalue.3:29 build/C/man3/sem_init.3:29 build/C/man3/sem_open.3:29 build/C/man3/sem_post.3:29 build/C/man3/sem_unlink.3:29 build/C/man3/sem_wait.3:29 build/C/man2/semctl.2:42 build/C/man2/semget.2:37 build/C/man2/semop.2:36
+#: build/C/man3/sem_close.3:29 build/C/man3/sem_destroy.3:29 build/C/man3/sem_getvalue.3:29 build/C/man3/sem_init.3:29 build/C/man3/sem_open.3:29 build/C/man3/sem_post.3:29 build/C/man3/sem_unlink.3:29 build/C/man3/sem_wait.3:29 build/C/man2/semctl.2:44 build/C/man2/semget.2:39 build/C/man2/semop.2:38
 #, no-wrap
 msgid "SYNOPSIS"
 msgstr ""
@@ -71,11 +71,11 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man3/sem_close.3:37 build/C/man3/sem_destroy.3:37 build/C/man3/sem_getvalue.3:37 build/C/man3/sem_init.3:37 build/C/man3/sem_open.3:41 build/C/man3/sem_post.3:37 build/C/man3/sem_unlink.3:37 build/C/man3/sem_wait.3:41
-msgid "Link with I<-lrt> or I<-pthread>."
+msgid "Link with I<-pthread>."
 msgstr ""
 
 #. type: SH
-#: build/C/man3/sem_close.3:37 build/C/man3/sem_destroy.3:37 build/C/man3/sem_getvalue.3:37 build/C/man3/sem_init.3:37 build/C/man3/sem_open.3:41 build/C/man7/sem_overview.7:29 build/C/man3/sem_post.3:37 build/C/man3/sem_unlink.3:37 build/C/man3/sem_wait.3:49 build/C/man2/semctl.2:50 build/C/man2/semget.2:47 build/C/man2/semop.2:55
+#: build/C/man3/sem_close.3:37 build/C/man3/sem_destroy.3:37 build/C/man3/sem_getvalue.3:37 build/C/man3/sem_init.3:37 build/C/man3/sem_open.3:41 build/C/man7/sem_overview.7:29 build/C/man3/sem_post.3:37 build/C/man3/sem_unlink.3:37 build/C/man3/sem_wait.3:49 build/C/man2/semctl.2:52 build/C/man2/semget.2:49 build/C/man2/semop.2:57
 #, no-wrap
 msgid "DESCRIPTION"
 msgstr ""
@@ -89,7 +89,7 @@ msgid ""
 msgstr ""
 
 #. type: SH
-#: build/C/man3/sem_close.3:43 build/C/man3/sem_destroy.3:55 build/C/man3/sem_getvalue.3:54 build/C/man3/sem_init.3:77 build/C/man3/sem_open.3:104 build/C/man3/sem_post.3:45 build/C/man3/sem_unlink.3:44 build/C/man3/sem_wait.3:108 build/C/man2/semctl.2:338 build/C/man2/semget.2:155 build/C/man2/semop.2:309
+#: build/C/man3/sem_close.3:43 build/C/man3/sem_destroy.3:55 build/C/man3/sem_getvalue.3:54 build/C/man3/sem_init.3:77 build/C/man3/sem_open.3:104 build/C/man3/sem_post.3:45 build/C/man3/sem_unlink.3:44 build/C/man3/sem_wait.3:108 build/C/man2/semctl.2:340 build/C/man2/semget.2:157 build/C/man2/semop.2:309
 #, no-wrap
 msgid "RETURN VALUE"
 msgstr ""
@@ -102,13 +102,13 @@ msgid ""
 msgstr ""
 
 #. type: SH
-#: build/C/man3/sem_close.3:49 build/C/man3/sem_destroy.3:61 build/C/man3/sem_getvalue.3:60 build/C/man3/sem_init.3:83 build/C/man3/sem_open.3:116 build/C/man3/sem_post.3:52 build/C/man3/sem_unlink.3:50 build/C/man3/sem_wait.3:114 build/C/man2/semctl.2:385 build/C/man2/semget.2:161 build/C/man2/semop.2:319
+#: build/C/man3/sem_close.3:49 build/C/man3/sem_destroy.3:61 build/C/man3/sem_getvalue.3:60 build/C/man3/sem_init.3:83 build/C/man3/sem_open.3:116 build/C/man3/sem_post.3:52 build/C/man3/sem_unlink.3:50 build/C/man3/sem_wait.3:114 build/C/man2/semctl.2:387 build/C/man2/semget.2:163 build/C/man2/semop.2:319
 #, no-wrap
 msgid "ERRORS"
 msgstr ""
 
 #. type: TP
-#: build/C/man3/sem_close.3:50 build/C/man3/sem_destroy.3:62 build/C/man3/sem_getvalue.3:61 build/C/man3/sem_init.3:84 build/C/man3/sem_open.3:132 build/C/man3/sem_open.3:137 build/C/man3/sem_post.3:53 build/C/man3/sem_wait.3:119 build/C/man3/sem_wait.3:133 build/C/man2/semctl.2:418 build/C/man2/semget.2:186 build/C/man2/semop.2:367
+#: build/C/man3/sem_close.3:50 build/C/man3/sem_destroy.3:62 build/C/man3/sem_getvalue.3:61 build/C/man3/sem_init.3:84 build/C/man3/sem_open.3:132 build/C/man3/sem_open.3:137 build/C/man3/sem_post.3:53 build/C/man3/sem_wait.3:119 build/C/man3/sem_wait.3:133 build/C/man2/semctl.2:420 build/C/man2/semget.2:188 build/C/man2/semop.2:367
 #, no-wrap
 msgid "B<EINVAL>"
 msgstr ""
@@ -119,7 +119,7 @@ msgid "I<sem> is not a valid semaphore."
 msgstr ""
 
 #. type: SH
-#: build/C/man3/sem_close.3:54 build/C/man3/sem_destroy.3:66 build/C/man3/sem_getvalue.3:65 build/C/man3/sem_init.3:95 build/C/man3/sem_open.3:170 build/C/man7/sem_overview.7:138 build/C/man3/sem_post.3:61 build/C/man3/sem_unlink.3:62 build/C/man3/sem_wait.3:143 build/C/man2/semctl.2:460 build/C/man2/semget.2:217 build/C/man2/semop.2:397
+#: build/C/man3/sem_close.3:54 build/C/man3/sem_destroy.3:66 build/C/man3/sem_getvalue.3:65 build/C/man3/sem_init.3:95 build/C/man3/sem_open.3:170 build/C/man7/sem_overview.7:138 build/C/man3/sem_post.3:61 build/C/man3/sem_unlink.3:62 build/C/man3/sem_wait.3:143 build/C/man2/semctl.2:462 build/C/man2/semget.2:219 build/C/man2/semop.2:397
 #, no-wrap
 msgid "CONFORMING TO"
 msgstr ""
@@ -130,7 +130,7 @@ msgid "POSIX.1-2001."
 msgstr ""
 
 #. type: SH
-#: build/C/man3/sem_close.3:56 build/C/man3/sem_destroy.3:68 build/C/man3/sem_getvalue.3:67 build/C/man3/sem_init.3:97 build/C/man7/sem_overview.7:140 build/C/man3/sem_post.3:63 build/C/man3/sem_wait.3:145 build/C/man2/semctl.2:463 build/C/man2/semget.2:221 build/C/man2/semop.2:400
+#: build/C/man3/sem_close.3:56 build/C/man3/sem_destroy.3:68 build/C/man3/sem_getvalue.3:67 build/C/man3/sem_init.3:97 build/C/man7/sem_overview.7:140 build/C/man3/sem_post.3:63 build/C/man3/sem_wait.3:145 build/C/man2/semctl.2:476 build/C/man2/semget.2:223 build/C/man2/semop.2:400
 #, no-wrap
 msgid "NOTES"
 msgstr ""
@@ -143,7 +143,7 @@ msgid ""
 msgstr ""
 
 #. type: SH
-#: build/C/man3/sem_close.3:60 build/C/man3/sem_destroy.3:74 build/C/man3/sem_getvalue.3:71 build/C/man3/sem_init.3:102 build/C/man3/sem_open.3:172 build/C/man7/sem_overview.7:152 build/C/man3/sem_post.3:70 build/C/man3/sem_unlink.3:64 build/C/man3/sem_wait.3:263 build/C/man2/semctl.2:509 build/C/man2/semget.2:279 build/C/man2/semop.2:513
+#: build/C/man3/sem_close.3:60 build/C/man3/sem_destroy.3:74 build/C/man3/sem_getvalue.3:71 build/C/man3/sem_init.3:102 build/C/man3/sem_open.3:172 build/C/man7/sem_overview.7:152 build/C/man3/sem_post.3:70 build/C/man3/sem_unlink.3:64 build/C/man3/sem_wait.3:262 build/C/man2/semctl.2:536 build/C/man2/semget.2:294 build/C/man2/semop.2:536
 #, no-wrap
 msgid "SEE ALSO"
 msgstr ""
@@ -156,17 +156,17 @@ msgid ""
 msgstr ""
 
 #. type: SH
-#: build/C/man3/sem_close.3:67 build/C/man3/sem_destroy.3:79 build/C/man3/sem_getvalue.3:75 build/C/man3/sem_init.3:107 build/C/man3/sem_open.3:179 build/C/man7/sem_overview.7:162 build/C/man3/sem_post.3:74 build/C/man3/sem_unlink.3:70 build/C/man3/sem_wait.3:269 build/C/man2/semctl.2:516 build/C/man2/semget.2:286 build/C/man2/semop.2:521
+#: build/C/man3/sem_close.3:67 build/C/man3/sem_destroy.3:79 build/C/man3/sem_getvalue.3:75 build/C/man3/sem_init.3:107 build/C/man3/sem_open.3:179 build/C/man7/sem_overview.7:162 build/C/man3/sem_post.3:74 build/C/man3/sem_unlink.3:70 build/C/man3/sem_wait.3:268 build/C/man2/semctl.2:543 build/C/man2/semget.2:301 build/C/man2/semop.2:545
 #, no-wrap
 msgid "COLOPHON"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_close.3:74 build/C/man3/sem_destroy.3:86 build/C/man3/sem_getvalue.3:82 build/C/man3/sem_init.3:114 build/C/man3/sem_open.3:186 build/C/man7/sem_overview.7:169 build/C/man3/sem_post.3:81 build/C/man3/sem_unlink.3:77 build/C/man3/sem_wait.3:276 build/C/man2/semctl.2:523 build/C/man2/semget.2:293 build/C/man2/semop.2:528
+#: build/C/man3/sem_close.3:74 build/C/man3/sem_destroy.3:86 build/C/man3/sem_getvalue.3:82 build/C/man3/sem_init.3:114 build/C/man3/sem_open.3:186 build/C/man7/sem_overview.7:169 build/C/man3/sem_post.3:81 build/C/man3/sem_unlink.3:77 build/C/man3/sem_wait.3:275 build/C/man2/semctl.2:550 build/C/man2/semget.2:308 build/C/man2/semop.2:552
 msgid ""
-"This page is part of release 3.35 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://man7.org/linux/man-pages/."
+"found at \\%http://www.kernel.org/doc/man-pages/."
 msgstr ""
 
 #. type: TH
@@ -294,12 +294,6 @@ msgstr ""
 msgid "SEM_INIT"
 msgstr ""
 
-#. type: TH
-#: build/C/man3/sem_init.3:26
-#, no-wrap
-msgid "2008-07-27"
-msgstr ""
-
 #. type: Plain text
 #: build/C/man3/sem_init.3:29
 msgid "sem_init - initialize an unnamed semaphore"
@@ -399,12 +393,6 @@ msgstr ""
 msgid "SEM_OPEN"
 msgstr ""
 
-#. type: TH
-#: build/C/man3/sem_open.3:26
-#, no-wrap
-msgid "2009-02-20"
-msgstr ""
-
 #. type: Plain text
 #: build/C/man3/sem_open.3:29
 msgid "sem_open - initialize and open a named semaphore"
@@ -436,7 +424,7 @@ msgid ""
 "construction of I<name>, see B<sem_overview>(7)."
 msgstr ""
 
-#.  In reality the file system IDs are used on Linux.
+#.  In reality the filesystem IDs are used on Linux.
 #. type: Plain text
 #: build/C/man3/sem_open.3:76
 msgid ""
@@ -474,7 +462,7 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man3/sem_open.3:117 build/C/man3/sem_unlink.3:51 build/C/man2/semctl.2:389 build/C/man2/semget.2:165 build/C/man2/semop.2:331
+#: build/C/man3/sem_open.3:117 build/C/man3/sem_unlink.3:51 build/C/man2/semctl.2:391 build/C/man2/semget.2:167 build/C/man2/semop.2:331
 #, no-wrap
 msgid "B<EACCES>"
 msgstr ""
@@ -485,7 +473,7 @@ msgid "The semaphore exists, but the caller does not have permission to open it.
 msgstr ""
 
 #. type: TP
-#: build/C/man3/sem_open.3:121 build/C/man2/semget.2:173
+#: build/C/man3/sem_open.3:121 build/C/man2/semget.2:175
 #, no-wrap
 msgid "B<EEXIST>"
 msgstr ""
@@ -541,7 +529,7 @@ msgid "The system limit on the total number of open files has been reached."
 msgstr ""
 
 #. type: TP
-#: build/C/man3/sem_open.3:151 build/C/man3/sem_unlink.3:58 build/C/man2/semget.2:197
+#: build/C/man3/sem_open.3:151 build/C/man3/sem_unlink.3:58 build/C/man2/semget.2:199
 #, no-wrap
 msgid "B<ENOENT>"
 msgstr ""
@@ -557,7 +545,7 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man3/sem_open.3:167 build/C/man2/semget.2:205 build/C/man2/semop.2:374
+#: build/C/man3/sem_open.3:167 build/C/man2/semget.2:207 build/C/man2/semop.2:374
 #, no-wrap
 msgid "B<ENOMEM>"
 msgstr ""
@@ -580,15 +568,9 @@ msgstr ""
 msgid "SEM_OVERVIEW"
 msgstr ""
 
-#. type: TH
-#: build/C/man7/sem_overview.7:26
-#, no-wrap
-msgid "2010-05-22"
-msgstr ""
-
 #. type: Plain text
 #: build/C/man7/sem_overview.7:29
-msgid "sem_overview - Overview of POSIX semaphores"
+msgid "sem_overview - overview of POSIX semaphores"
 msgstr ""
 
 #. type: Plain text
@@ -693,7 +675,7 @@ msgstr ""
 #. type: Plain text
 #: build/C/man7/sem_overview.7:114
 msgid ""
-"Prior to kernel 2.6, Linux only supported unnamed, thread-shared "
+"Prior to kernel 2.6, Linux supported only unnamed, thread-shared "
 "semaphores.  On a system with Linux 2.6 and a glibc that provides the NPTL "
 "threading implementation, a complete implementation of POSIX semaphores is "
 "provided."
@@ -721,20 +703,20 @@ msgstr ""
 #. type: Plain text
 #: build/C/man7/sem_overview.7:124
 msgid ""
-"Programs using the POSIX semaphores API must be compiled with I<cc -lrt> to "
-"link against the real-time library, I<librt>."
+"Programs using the POSIX semaphores API must be compiled with I<cc -pthread> "
+"to link against the real-time library, I<librt>."
 msgstr ""
 
 #. type: SS
 #: build/C/man7/sem_overview.7:124
 #, no-wrap
-msgid "Accessing named semaphores via the file system"
+msgid "Accessing named semaphores via the filesystem"
 msgstr ""
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:135
 msgid ""
-"On Linux, named semaphores are created in a virtual file system, normally "
+"On Linux, named semaphores are created in a virtual filesystem, normally "
 "mounted under I</dev/shm>, with names of the form B<sem.>I<somename>.  (This "
 "is the reason that semaphore names are limited to B<NAME_MAX>I<-4> rather "
 "than B<NAME_MAX> characters.)"
@@ -757,7 +739,7 @@ msgid ""
 msgstr ""
 
 #. type: SH
-#: build/C/man7/sem_overview.7:149 build/C/man3/sem_post.3:67 build/C/man3/sem_wait.3:153 build/C/man2/semop.2:488
+#: build/C/man7/sem_overview.7:149 build/C/man3/sem_post.3:67 build/C/man3/sem_wait.3:153 build/C/man2/semop.2:511
 #, no-wrap
 msgid "EXAMPLE"
 msgstr ""
@@ -783,12 +765,6 @@ msgstr ""
 msgid "SEM_POST"
 msgstr ""
 
-#. type: TH
-#: build/C/man3/sem_post.3:26
-#, no-wrap
-msgid "2009-03-30"
-msgstr ""
-
 #. type: Plain text
 #: build/C/man3/sem_post.3:29
 msgid "sem_post - unlock a semaphore"
@@ -900,12 +876,6 @@ msgstr ""
 msgid "SEM_WAIT"
 msgstr ""
 
-#. type: TH
-#: build/C/man3/sem_wait.3:26
-#, no-wrap
-msgid "2010-02-25"
-msgstr ""
-
 #. type: Plain text
 #: build/C/man3/sem_wait.3:29
 msgid "sem_wait, sem_timedwait, sem_trywait - lock a semaphore"
@@ -932,7 +902,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:45 build/C/man2/semop.2:51
+#: build/C/man3/sem_wait.3:45 build/C/man2/semop.2:53
 msgid "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
 msgstr ""
 
@@ -1085,13 +1055,12 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:183
+#: build/C/man3/sem_wait.3:182
 #, no-wrap
 msgid ""
 "$B< ./a.out 2 3>\n"
 "About to call sem_timedwait()\n"
 "sem_post() from handler\n"
-"sem_getvalue() from handler; value = 1\n"
 "sem_timedwait() succeeded\n"
 "$B< ./a.out 2 1>\n"
 "About to call sem_timedwait()\n"
@@ -1099,13 +1068,13 @@ msgid ""
 msgstr ""
 
 #. type: SS
-#: build/C/man3/sem_wait.3:185
+#: build/C/man3/sem_wait.3:184
 #, no-wrap
 msgid "Program source"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:196
+#: build/C/man3/sem_wait.3:195
 #, no-wrap
 msgid ""
 "#include E<lt>unistd.hE<gt>\n"
@@ -1119,13 +1088,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:198
+#: build/C/man3/sem_wait.3:197
 #, no-wrap
 msgid "sem_t sem;\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:201
+#: build/C/man3/sem_wait.3:200
 #, no-wrap
 msgid ""
 "#define handle_error(msg) \\e\n"
@@ -1133,7 +1102,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:211
+#: build/C/man3/sem_wait.3:210
 #, no-wrap
 msgid ""
 "static void\n"
@@ -1148,7 +1117,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:218
+#: build/C/man3/sem_wait.3:217
 #, no-wrap
 msgid ""
 "int\n"
@@ -1160,7 +1129,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:224
+#: build/C/man3/sem_wait.3:223
 #, no-wrap
 msgid ""
 "    if (argc != 3) {\n"
@@ -1172,7 +1141,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:227
+#: build/C/man3/sem_wait.3:226
 #, no-wrap
 msgid ""
 "    if (sem_init(&sem, 0, 0) == -1)\n"
@@ -1180,13 +1149,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:229
+#: build/C/man3/sem_wait.3:228
 #, no-wrap
 msgid "    /* Establish SIGALRM handler; set alarm timer using argv[1] */\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:235
+#: build/C/man3/sem_wait.3:234
 #, no-wrap
 msgid ""
 "    sa.sa_handler = handler;\n"
@@ -1197,13 +1166,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:237
+#: build/C/man3/sem_wait.3:236
 #, no-wrap
 msgid "    alarm(atoi(argv[1]));\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:240
+#: build/C/man3/sem_wait.3:239
 #, no-wrap
 msgid ""
 "    /* Calculate relative interval as current time plus\n"
@@ -1211,7 +1180,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:243
+#: build/C/man3/sem_wait.3:242
 #, no-wrap
 msgid ""
 "    if (clock_gettime(CLOCK_REALTIME, &ts) == -1)\n"
@@ -1219,13 +1188,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:245
+#: build/C/man3/sem_wait.3:244
 #, no-wrap
 msgid "    ts.tv_sec += atoi(argv[2]);\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:249
+#: build/C/man3/sem_wait.3:248
 #, no-wrap
 msgid ""
 "    printf(\"main() about to call sem_timedwait()\\en\");\n"
@@ -1234,13 +1203,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:251
+#: build/C/man3/sem_wait.3:250
 #, no-wrap
 msgid "    /* Check what happened */\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:259
+#: build/C/man3/sem_wait.3:258
 #, no-wrap
 msgid ""
 "    if (s == -1) {\n"
@@ -1253,7 +1222,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:262
+#: build/C/man3/sem_wait.3:261
 #, no-wrap
 msgid ""
 "    exit((s == 0) ? EXIT_SUCCESS : EXIT_FAILURE);\n"
@@ -1261,31 +1230,31 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man3/sem_wait.3:269
+#: build/C/man3/sem_wait.3:268
 msgid ""
 "B<clock_gettime>(2), B<sem_getvalue>(3), B<sem_post>(3), B<sem_overview>(7), "
 "B<time>(7)"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/semctl.2:39
+#: build/C/man2/semctl.2:41
 #, no-wrap
 msgid "SEMCTL"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/semctl.2:39
+#: build/C/man2/semctl.2:41
 #, no-wrap
-msgid "2009-09-27"
+msgid "2013-06-03"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:42
-msgid "semctl - semaphore control operations"
+#: build/C/man2/semctl.2:44
+msgid "semctl - System V semaphore control operations"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:47 build/C/man2/semget.2:42 build/C/man2/semop.2:41
+#: build/C/man2/semctl.2:49 build/C/man2/semget.2:44 build/C/man2/semop.2:43
 #, no-wrap
 msgid ""
 "B<#include E<lt>sys/types.hE<gt>>\n"
@@ -1294,21 +1263,22 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:49
+#: build/C/man2/semctl.2:51
 #, no-wrap
 msgid "B<int semctl(int >I<semid>B<, int >I<semnum>B<, int >I<cmd>B<, ...);>\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:60
+#: build/C/man2/semctl.2:62
 msgid ""
 "B<semctl>()  performs the control operation specified by I<cmd> on the "
-"semaphore set identified by I<semid>, or on the I<semnum>-th semaphore of "
-"that set.  (The semaphores in a set are numbered starting at 0.)"
+"System V semaphore set identified by I<semid>, or on the I<semnum>-th "
+"semaphore of that set.  (The semaphores in a set are numbered starting at "
+"0.)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:66
+#: build/C/man2/semctl.2:68
 msgid ""
 "This function has three or four arguments, depending on I<cmd>.  When there "
 "are four, the fourth has the type I<union semun>.  The I<calling program> "
@@ -1316,7 +1286,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:76
+#: build/C/man2/semctl.2:78
 #, no-wrap
 msgid ""
 "union semun {\n"
@@ -1329,33 +1299,33 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:82
+#: build/C/man2/semctl.2:84
 msgid ""
 "The I<semid_ds> data structure is defined in I<E<lt>sys/sem.hE<gt>> as "
 "follows:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:91
+#: build/C/man2/semctl.2:93
 #, no-wrap
 msgid ""
 "struct semid_ds {\n"
 "    struct ipc_perm sem_perm;  /* Ownership and permissions */\n"
 "    time_t          sem_otime; /* Last semop time */\n"
 "    time_t          sem_ctime; /* Last change time */\n"
-"    unsigned short  sem_nsems; /* No. of semaphores in set */\n"
+"    unsigned long   sem_nsems; /* No. of semaphores in set */\n"
 "};\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:99
+#: build/C/man2/semctl.2:101
 msgid ""
-"The I<ipc_perm> structure is defined in I<E<lt>sys/ipc.hE<gt>> as follows "
-"(the highlighted fields are settable using B<IPC_SET>):"
+"The I<ipc_perm> structure is defined as follows (the highlighted fields are "
+"settable using B<IPC_SET>):"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:111
+#: build/C/man2/semctl.2:113
 #, no-wrap
 msgid ""
 "struct ipc_perm {\n"
@@ -1370,18 +1340,18 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:117
+#: build/C/man2/semctl.2:119
 msgid "Valid values for I<cmd> are:"
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:117
+#: build/C/man2/semctl.2:119
 #, no-wrap
 msgid "B<IPC_STAT>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:129
+#: build/C/man2/semctl.2:131
 msgid ""
 "Copy information from the kernel data structure associated with I<semid> "
 "into the I<semid_ds> structure pointed to by I<arg.buf>.  The argument "
@@ -1390,13 +1360,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:129
+#: build/C/man2/semctl.2:131
 #, no-wrap
 msgid "B<IPC_SET>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:152
+#: build/C/man2/semctl.2:154
 msgid ""
 "Write the values of some members of the I<semid_ds> structure pointed to by "
 "I<arg.buf> to the kernel data structure associated with this semaphore set, "
@@ -1409,13 +1379,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:152
+#: build/C/man2/semctl.2:154
 #, no-wrap
 msgid "B<IPC_RMID>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:167
+#: build/C/man2/semctl.2:169
 msgid ""
 "Immediately remove the semaphore set, awakening all processes blocked in "
 "B<semop>(2)  calls on the set (with an error return and I<errno> set to "
@@ -1425,13 +1395,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:167
+#: build/C/man2/semctl.2:169
 #, no-wrap
 msgid "B<IPC_INFO> (Linux-specific)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:179
+#: build/C/man2/semctl.2:181
 msgid ""
 "Returns information about system-wide semaphore limits and parameters in the "
 "structure pointed to by I<arg.__buf>.  This structure is of type I<seminfo>, "
@@ -1440,7 +1410,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:201
+#: build/C/man2/semctl.2:203
 #, no-wrap
 msgid ""
 "struct  seminfo {\n"
@@ -1465,20 +1435,20 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:215
+#: build/C/man2/semctl.2:217
 msgid ""
 "The I<semmsl>, I<semmns>, I<semopm>, and I<semmni> settings can be changed "
 "via I</proc/sys/kernel/sem>; see B<proc>(5)  for details."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:215
+#: build/C/man2/semctl.2:217
 #, no-wrap
 msgid "B<SEM_INFO> (Linux-specific)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:229
+#: build/C/man2/semctl.2:231
 msgid ""
 "Returns a I<seminfo> structure containing the same information as for "
 "B<IPC_INFO>, except that the following fields are returned with information "
@@ -1489,13 +1459,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:229
+#: build/C/man2/semctl.2:231
 #, no-wrap
 msgid "B<SEM_STAT> (Linux-specific)"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:240
+#: build/C/man2/semctl.2:242
 msgid ""
 "Returns a I<semid_ds> structure as for B<IPC_STAT>.  However, the I<semid> "
 "argument is not a semaphore identifier, but instead an index into the "
@@ -1504,13 +1474,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:240
+#: build/C/man2/semctl.2:242
 #, no-wrap
 msgid "B<GETALL>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:251
+#: build/C/man2/semctl.2:253
 msgid ""
 "Return B<semval> (i.e., the current value)  for all semaphores of the set "
 "into I<arg.array>.  The argument I<semnum> is ignored.  The calling process "
@@ -1518,13 +1488,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:251 build/C/man2/semctl.2:349
+#: build/C/man2/semctl.2:253 build/C/man2/semctl.2:351
 #, no-wrap
 msgid "B<GETNCNT>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:264
+#: build/C/man2/semctl.2:266
 msgid ""
 "The system call returns the value of B<semncnt> for the I<semnum>-th "
 "semaphore of the set (i.e., the number of processes waiting for an increase "
@@ -1533,13 +1503,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:264 build/C/man2/semctl.2:353
+#: build/C/man2/semctl.2:266 build/C/man2/semctl.2:355
 #, no-wrap
 msgid "B<GETPID>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:277
+#: build/C/man2/semctl.2:279
 msgid ""
 "The system call returns the value of B<sempid> for the I<semnum>-th "
 "semaphore of the set (i.e., the PID of the process that executed the last "
@@ -1548,13 +1518,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:277 build/C/man2/semctl.2:357
+#: build/C/man2/semctl.2:279 build/C/man2/semctl.2:359
 #, no-wrap
 msgid "B<GETVAL>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:285
+#: build/C/man2/semctl.2:287
 msgid ""
 "The system call returns the value of B<semval> for the I<semnum>-th "
 "semaphore of the set.  The calling process must have read permission on the "
@@ -1562,13 +1532,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:285 build/C/man2/semctl.2:361
+#: build/C/man2/semctl.2:287 build/C/man2/semctl.2:363
 #, no-wrap
 msgid "B<GETZCNT>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:298
+#: build/C/man2/semctl.2:300
 msgid ""
 "The system call returns the value of B<semzcnt> for the I<semnum>-th "
 "semaphore of the set (i.e., the number of processes waiting for B<semval> of "
@@ -1577,13 +1547,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:298
+#: build/C/man2/semctl.2:300
 #, no-wrap
 msgid "B<SETALL>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:320
+#: build/C/man2/semctl.2:322
 msgid ""
 "Set B<semval> for all semaphores of the set using I<arg.array>, updating "
 "also the I<sem_ctime> member of the I<semid_ds> structure associated with "
@@ -1595,13 +1565,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:320
+#: build/C/man2/semctl.2:322
 #, no-wrap
 msgid "B<SETVAL>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:338
+#: build/C/man2/semctl.2:340
 msgid ""
 "Set the value of B<semval> to I<arg.val> for the I<semnum>-th semaphore of "
 "the set, updating also the I<sem_ctime> member of the I<semid_ds> structure "
@@ -1613,45 +1583,45 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:345
+#: build/C/man2/semctl.2:347
 msgid "On failure B<semctl>()  returns -1 with I<errno> indicating the error."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:349
+#: build/C/man2/semctl.2:351
 msgid ""
 "Otherwise the system call returns a nonnegative value depending on I<cmd> as "
 "follows:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:353
+#: build/C/man2/semctl.2:355
 msgid "the value of B<semncnt>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:357
+#: build/C/man2/semctl.2:359
 msgid "the value of B<sempid>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:361
+#: build/C/man2/semctl.2:363
 msgid "the value of B<semval>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:365
+#: build/C/man2/semctl.2:367
 msgid "the value of B<semzcnt>."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:365
+#: build/C/man2/semctl.2:367
 #, no-wrap
 msgid "B<IPC_INFO>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:373
+#: build/C/man2/semctl.2:375
 msgid ""
 "the index of the highest used entry in the kernel's internal array recording "
 "information about all semaphore sets.  (This information can be used with "
@@ -1660,39 +1630,39 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:373
+#: build/C/man2/semctl.2:375
 #, no-wrap
 msgid "B<SEM_INFO>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:377
+#: build/C/man2/semctl.2:379
 msgid "As for B<IPC_INFO>."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:377
+#: build/C/man2/semctl.2:379
 #, no-wrap
 msgid "B<SEM_STAT>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:381
+#: build/C/man2/semctl.2:383
 msgid "the identifier of the semaphore set whose index was given in I<semid>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:385
+#: build/C/man2/semctl.2:387
 msgid "All other I<cmd> values return 0 on success."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:389
+#: build/C/man2/semctl.2:391
 msgid "On failure, I<errno> will be set to one of the following:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:408
+#: build/C/man2/semctl.2:410
 msgid ""
 "The argument I<cmd> has one of the values B<GETALL>, B<GETPID>, B<GETVAL>, "
 "B<GETNCNT>, B<GETZCNT>, B<IPC_STAT>, B<SEM_STAT>, B<SETALL>, or B<SETVAL> "
@@ -1701,29 +1671,29 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:408 build/C/man2/semop.2:347
+#: build/C/man2/semctl.2:410 build/C/man2/semop.2:347
 #, no-wrap
 msgid "B<EFAULT>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:415
+#: build/C/man2/semctl.2:417
 msgid "The address pointed to by I<arg.buf> or I<arg.array> isn't accessible."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:415 build/C/man2/semop.2:360
+#: build/C/man2/semctl.2:417 build/C/man2/semop.2:360
 #, no-wrap
 msgid "B<EIDRM>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:418 build/C/man2/semop.2:363
+#: build/C/man2/semctl.2:420 build/C/man2/semop.2:363
 msgid "The semaphore set was removed."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:429
+#: build/C/man2/semctl.2:431
 msgid ""
 "Invalid value for I<cmd> or I<semid>.  Or: for a B<SEM_STAT> operation, the "
 "index value specified in I<semid> referred to an array slot that is "
@@ -1731,13 +1701,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:429
+#: build/C/man2/semctl.2:431
 #, no-wrap
 msgid "B<EPERM>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:447
+#: build/C/man2/semctl.2:449
 msgid ""
 "The argument I<cmd> has the value B<IPC_SET> or B<IPC_RMID> but the "
 "effective user ID of the calling process is not the creator (as found in "
@@ -1747,13 +1717,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:447 build/C/man2/semop.2:382
+#: build/C/man2/semctl.2:449 build/C/man2/semop.2:382
 #, no-wrap
 msgid "B<ERANGE>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:460
+#: build/C/man2/semctl.2:462
 msgid ""
 "The argument I<cmd> has the value B<SETALL> or B<SETVAL> and the value to "
 "which B<semval> is to be set (for some semaphore of the set) is less than 0 "
@@ -1762,20 +1732,41 @@ msgstr ""
 
 #.  SVr4 documents additional error conditions EINVAL, EFBIG, ENOSPC.
 #. type: Plain text
-#: build/C/man2/semctl.2:463 build/C/man2/semget.2:221 build/C/man2/semop.2:400
+#: build/C/man2/semctl.2:465 build/C/man2/semget.2:223 build/C/man2/semop.2:400
 msgid "SVr4, POSIX.1-2001."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:474
+#: build/C/man2/semctl.2:476
+msgid ""
+"POSIX.1-2001 specifies the I<sem_nsems> field of the I<semid_ds> structure "
+"as having the type I<unsigned\\ short>, and the field is so defined on most "
+"other systems.  It was also so defined on Linux 2.2 and earlier, but, since "
+"Linux 2.4, the field has the type I<unsigned\\ long>."
+msgstr ""
+
+#.  Like Linux, the FreeBSD man pages still document
+#.  the inclusion of these header files.
+#. type: Plain text
+#: build/C/man2/semctl.2:489 build/C/man2/semget.2:236 build/C/man2/semop.2:413
+msgid ""
+"The inclusion of I<E<lt>sys/types.hE<gt>> and I<E<lt>sys/ipc.hE<gt>> isn't "
+"required on Linux or by any version of POSIX.  However, some old "
+"implementations required the inclusion of these header files, and the SVID "
+"also documented their inclusion.  Applications intended to be portable to "
+"such old systems may need to include these header files."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/semctl.2:501
 msgid ""
 "The B<IPC_INFO>, B<SEM_STAT> and B<SEM_INFO> operations are used by the "
 "B<ipcs>(1)  program to provide information on allocated resources.  In the "
-"future these may modified or moved to a /proc file system interface."
+"future these may modified or moved to a I</proc> filesystem interface."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:487
+#: build/C/man2/semctl.2:514
 msgid ""
 "Various fields in a I<struct semid_ds> were typed as I<short> under Linux "
 "2.2 and have become I<long> under Linux 2.4.  To take advantage of this, a "
@@ -1784,7 +1775,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:496
+#: build/C/man2/semctl.2:523
 msgid ""
 "In some earlier versions of glibc, the I<semun> union was defined in "
 "I<E<lt>sys/sem.hE<gt>>, but POSIX.1-2001 requires that the caller define "
@@ -1793,68 +1784,68 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:500
+#: build/C/man2/semctl.2:527
 msgid "The following system limit on semaphore sets affects a B<semctl>()  call:"
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semctl.2:500 build/C/man2/semop.2:446
+#: build/C/man2/semctl.2:527 build/C/man2/semop.2:469
 #, no-wrap
 msgid "B<SEMVMX>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:505
+#: build/C/man2/semctl.2:532
 msgid "Maximum value for B<semval>: implementation dependent (32767)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:509
+#: build/C/man2/semctl.2:536
 msgid ""
 "For greater portability it is best to always call B<semctl>()  with four "
 "arguments."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semctl.2:516
+#: build/C/man2/semctl.2:543
 msgid ""
 "B<ipc>(2), B<semget>(2), B<semop>(2), B<capabilities>(7), "
 "B<sem_overview>(7), B<svipc>(7)"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/semget.2:34
+#: build/C/man2/semget.2:36
 #, no-wrap
 msgid "SEMGET"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/semget.2:34
+#: build/C/man2/semget.2:36
 #, no-wrap
-msgid "2004-05-27"
+msgid "2012-05-31"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:37
-msgid "semget - get a semaphore set identifier"
+#: build/C/man2/semget.2:39
+msgid "semget - get a System V semaphore set identifier"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:47
+#: build/C/man2/semget.2:49
 msgid "B<int semget(key_t >I<key>B<,> B<int >I<nsems>B<,> B<int >I<semflg>B<);>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:65
+#: build/C/man2/semget.2:67
 msgid ""
-"The B<semget>()  system call returns the semaphore set identifier associated "
-"with the argument I<key>.  A new set of I<nsems> semaphores is created if "
-"I<key> has the value B<IPC_PRIVATE> or if no existing semaphore set is "
-"associated with I<key> and B<IPC_CREAT> is specified in I<semflg>."
+"The B<semget>()  system call returns the System V semaphore set identifier "
+"associated with the argument I<key>.  A new set of I<nsems> semaphores is "
+"created if I<key> has the value B<IPC_PRIVATE> or if no existing semaphore "
+"set is associated with I<key> and B<IPC_CREAT> is specified in I<semflg>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:84
+#: build/C/man2/semget.2:86
 msgid ""
 "If I<semflg> specifies both B<IPC_CREAT> and B<IPC_EXCL> and a semaphore set "
 "already exists for I<key>, then B<semget>()  fails with I<errno> set to "
@@ -1863,7 +1854,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:97
+#: build/C/man2/semget.2:99
 msgid ""
 "Upon creation, the least significant 9 bits of the argument I<semflg> define "
 "the permissions (for owner, group and others)  for the semaphore set.  These "
@@ -1877,7 +1868,7 @@ msgstr ""
 #.  the values to zero, but I suppose there is/was some obscure
 #.  implementation out there that does not.
 #. type: Plain text
-#: build/C/man2/semget.2:107
+#: build/C/man2/semget.2:109
 msgid ""
 "The values of the semaphores in a newly created set are indeterminate.  "
 "(POSIX.1-2001 is explicit on this point.)  Although Linux, like many other "
@@ -1887,50 +1878,50 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:115
+#: build/C/man2/semget.2:117
 msgid ""
 "When creating a new semaphore set, B<semget>()  initializes the set's "
 "associated data structure, I<semid_ds> (see B<semctl>(2)), as follows:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:120
+#: build/C/man2/semget.2:122
 msgid ""
 "I<sem_perm.cuid> and I<sem_perm.uid> are set to the effective user ID of the "
 "calling process."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:125
+#: build/C/man2/semget.2:127
 msgid ""
 "I<sem_perm.cgid> and I<sem_perm.gid> are set to the effective group ID of "
 "the calling process."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:130
+#: build/C/man2/semget.2:132
 msgid ""
 "The least significant 9 bits of I<sem_perm.mode> are set to the least "
 "significant 9 bits of I<semflg>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:134
+#: build/C/man2/semget.2:136
 msgid "I<sem_nsems> is set to the value of I<nsems>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:137
+#: build/C/man2/semget.2:139
 msgid "I<sem_otime> is set to 0."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:140
+#: build/C/man2/semget.2:142
 msgid "I<sem_ctime> is set to the current time."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:151
+#: build/C/man2/semget.2:153
 msgid ""
 "The argument I<nsems> can be 0 (a don't care)  when a semaphore set is not "
 "being created.  Otherwise I<nsems> must be greater than 0 and less than or "
@@ -1939,12 +1930,12 @@ msgstr ""
 
 #.  and a check is made to see if it is marked for destruction.
 #. type: Plain text
-#: build/C/man2/semget.2:155
+#: build/C/man2/semget.2:157
 msgid "If the semaphore set already exists, the permissions are verified."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:161
+#: build/C/man2/semget.2:163
 msgid ""
 "If successful, the return value will be the semaphore set identifier (a "
 "nonnegative integer), otherwise -1 is returned, with I<errno> indicating the "
@@ -1952,12 +1943,12 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:165
+#: build/C/man2/semget.2:167
 msgid "On failure I<errno> will be set to one of the following:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:173
+#: build/C/man2/semget.2:175
 msgid ""
 "A semaphore set exists for I<key>, but the calling process does not have "
 "permission to access the set, and does not have the B<CAP_IPC_OWNER> "
@@ -1968,14 +1959,14 @@ msgstr ""
 #.  .B EIDRM
 #.  The semaphore set is marked to be deleted.
 #. type: Plain text
-#: build/C/man2/semget.2:186
+#: build/C/man2/semget.2:188
 msgid ""
 "A semaphore set exists for I<key> and I<semflg> specified both B<IPC_CREAT> "
 "and B<IPC_EXCL>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:197
+#: build/C/man2/semget.2:199
 msgid ""
 "I<nsems> is less than 0 or greater than the limit on the number of "
 "semaphores per semaphore set (B<SEMMSL>), or a semaphore set corresponding "
@@ -1984,27 +1975,27 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:205
+#: build/C/man2/semget.2:207
 msgid ""
 "No semaphore set exists for I<key> and I<semflg> did not specify "
 "B<IPC_CREAT>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:209
+#: build/C/man2/semget.2:211
 msgid ""
 "A semaphore set has to be created but the system does not have enough memory "
 "for the new data structure."
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semget.2:209
+#: build/C/man2/semget.2:211
 #, no-wrap
 msgid "B<ENOSPC>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:217
+#: build/C/man2/semget.2:219
 msgid ""
 "A semaphore set has to be created but the system limit for the maximum "
 "number of semaphore sets (B<SEMMNI>), or the system wide maximum number of "
@@ -2012,7 +2003,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:231
+#: build/C/man2/semget.2:246
 msgid ""
 "B<IPC_PRIVATE> isn't a flag field but a I<key_t> type.  If this special "
 "value is used for I<key>, the system call ignores everything but the least "
@@ -2021,21 +2012,21 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:235
+#: build/C/man2/semget.2:250
 msgid ""
 "The following limits on semaphore set resources affect the B<semget>()  "
 "call:"
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semget.2:235
+#: build/C/man2/semget.2:250
 #, no-wrap
 msgid "B<SEMMNI>"
 msgstr ""
 
 #.  This /proc file is not available in Linux 2.2 and earlier -- MTK
 #. type: Plain text
-#: build/C/man2/semget.2:241
+#: build/C/man2/semget.2:256
 msgid ""
 "System wide maximum number of semaphore sets: policy dependent (on Linux, "
 "this limit can be read and modified via the fourth field of "
@@ -2043,13 +2034,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semget.2:241
+#: build/C/man2/semget.2:256
 #, no-wrap
 msgid "B<SEMMSL>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:246
+#: build/C/man2/semget.2:261
 msgid ""
 "Maximum number of semaphores per semid: implementation dependent (on Linux, "
 "this limit can be read and modified via the first field of "
@@ -2057,13 +2048,13 @@ msgid ""
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semget.2:246
+#: build/C/man2/semget.2:261
 #, no-wrap
 msgid "B<SEMMNS>"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:254
+#: build/C/man2/semget.2:269
 msgid ""
 "System wide maximum number of semaphores: policy dependent (on Linux, this "
 "limit can be read and modified via the second field of "
@@ -2072,13 +2063,13 @@ msgid ""
 msgstr ""
 
 #. type: SH
-#: build/C/man2/semget.2:254 build/C/man2/semop.2:458
+#: build/C/man2/semget.2:269 build/C/man2/semop.2:481
 #, no-wrap
 msgid "BUGS"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:260
+#: build/C/man2/semget.2:275
 msgid ""
 "The name choice B<IPC_PRIVATE> was perhaps unfortunate, B<IPC_NEW> would "
 "more clearly show its function."
@@ -2087,7 +2078,7 @@ msgstr ""
 #.  In fact they are initialized to zero on Linux, but POSIX.1-2001
 #.  does not specify this, and we can't portably rely on it.
 #. type: Plain text
-#: build/C/man2/semget.2:279
+#: build/C/man2/semget.2:294
 msgid ""
 "The semaphores in a set are not initialized by B<semget>().  In order to "
 "initialize the semaphores, B<semctl>(2)  must be used to perform a B<SETVAL> "
@@ -2098,31 +2089,31 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semget.2:286
+#: build/C/man2/semget.2:301
 msgid ""
 "B<semctl>(2), B<semop>(2), B<ftok>(3), B<capabilities>(7), "
 "B<sem_overview>(7), B<svipc>(7)"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/semop.2:33
+#: build/C/man2/semop.2:35
 #, no-wrap
 msgid "SEMOP"
 msgstr ""
 
 #. type: TH
-#: build/C/man2/semop.2:33
+#: build/C/man2/semop.2:35
 #, no-wrap
-msgid "2008-10-04"
+msgid "2013-04-17"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:36
-msgid "semop, semtimedop - semaphore operations"
+#: build/C/man2/semop.2:38
+msgid "semop, semtimedop - System V semaphore operations"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:43
+#: build/C/man2/semop.2:45
 #, no-wrap
 msgid ""
 "B<int semop(int >I<semid>B<, struct sembuf *>I<sops>B<, unsigned "
@@ -2130,7 +2121,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:46
+#: build/C/man2/semop.2:48
 #, no-wrap
 msgid ""
 "B<int semtimedop(int >I<semid>B<, struct sembuf *>I<sops>B<, unsigned "
@@ -2139,27 +2130,29 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:55
+#: build/C/man2/semop.2:57
 msgid "B<semtimedop>(): _GNU_SOURCE"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:57
-msgid "Each semaphore in a semaphore set has the following associated values:"
+#: build/C/man2/semop.2:60
+msgid ""
+"Each semaphore in a System V semaphore set has the following associated "
+"values:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:64
+#: build/C/man2/semop.2:67
 #, no-wrap
 msgid ""
 "unsigned short  semval;   /* semaphore value */\n"
 "unsigned short  semzcnt;  /* # waiting for zero */\n"
 "unsigned short  semncnt;  /* # waiting for increase */\n"
-"pid_t           sempid;   /* process that did last op */\n"
+"pid_t           sempid;   /* ID of process that did last op */\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:78
+#: build/C/man2/semop.2:81
 msgid ""
 "B<semop>()  performs operations on selected semaphores in the set indicated "
 "by I<semid>.  Each of the I<nsops> elements in the array pointed to by "
@@ -2169,7 +2162,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:84
+#: build/C/man2/semop.2:87
 #, no-wrap
 msgid ""
 "unsigned short sem_num;  /* semaphore number */\n"
@@ -2178,7 +2171,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:96
+#: build/C/man2/semop.2:99
 msgid ""
 "Flags recognized in I<sem_flg> are B<IPC_NOWAIT> and B<SEM_UNDO>.  If an "
 "operation specifies B<SEM_UNDO>, it will be automatically undone when the "
@@ -2186,7 +2179,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:111
+#: build/C/man2/semop.2:114
 msgid ""
 "The set of operations contained in I<sops> is performed in I<array order>, "
 "and I<atomically>, that is, the operations are performed either as a "
@@ -2196,7 +2189,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:118
+#: build/C/man2/semop.2:121
 msgid ""
 "Each operation is performed on the I<sem_num>-th semaphore of the semaphore "
 "set, where the first semaphore of the set is numbered 0.  There are three "
@@ -2204,102 +2197,100 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:131
+#: build/C/man2/semop.2:136
 msgid ""
 "If I<sem_op> is a positive integer, the operation adds this value to the "
 "semaphore value (I<semval>).  Furthermore, if B<SEM_UNDO> is specified for "
-"this operation, the system updates the process undo count (I<semadj>)  for "
-"this semaphore.  This operation can always proceed\\(emit never forces a "
-"process to wait.  The calling process must have alter permission on the "
-"semaphore set."
+"this operation, the system subtracts the value I<sem_op> from the semaphore "
+"adjustment (I<semadj>)  value for this semaphore.  This operation can always "
+"proceed\\(emit never forces a thread to wait.  The calling process must have "
+"alter permission on the semaphore set."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:156
+#: build/C/man2/semop.2:161
 msgid ""
 "If I<sem_op> is zero, the process must have read permission on the semaphore "
 "set.  This is a \"wait-for-zero\" operation: if I<semval> is zero, the "
 "operation can immediately proceed.  Otherwise, if B<IPC_NOWAIT> is specified "
 "in I<sem_flg>, B<semop>()  fails with I<errno> set to B<EAGAIN> (and none of "
 "the operations in I<sops> is performed).  Otherwise I<semzcnt> (the count of "
-"processes waiting until this semaphore's value becomes zero)  is incremented "
-"by one and the process sleeps until one of the following occurs:"
+"threads waiting until this semaphore's value becomes zero)  is incremented "
+"by one and the thread sleeps until one of the following occurs:"
 msgstr ""
 
 #. type: IP
-#: build/C/man2/semop.2:156 build/C/man2/semop.2:161 build/C/man2/semop.2:169 build/C/man2/semop.2:179 build/C/man2/semop.2:230 build/C/man2/semop.2:245 build/C/man2/semop.2:252 build/C/man2/semop.2:262
+#: build/C/man2/semop.2:161 build/C/man2/semop.2:166 build/C/man2/semop.2:174 build/C/man2/semop.2:184 build/C/man2/semop.2:237 build/C/man2/semop.2:242 build/C/man2/semop.2:249 build/C/man2/semop.2:259
 #, no-wrap
 msgid "\\(bu"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:161
+#: build/C/man2/semop.2:166
 msgid "I<semval> becomes 0, at which time the value of I<semzcnt> is decremented."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:169
+#: build/C/man2/semop.2:174
 msgid ""
 "The semaphore set is removed: B<semop>()  fails, with I<errno> set to "
 "B<EIDRM>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:179
+#: build/C/man2/semop.2:184
 msgid ""
-"The calling process catches a signal: the value of I<semzcnt> is decremented "
+"The calling thread catches a signal: the value of I<semzcnt> is decremented "
 "and B<semop>()  fails, with I<errno> set to B<EINTR>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:190
+#: build/C/man2/semop.2:195
 msgid ""
 "The time limit specified by I<timeout> in a B<semtimedop>()  call expires: "
 "B<semop>()  fails, with I<errno> set to B<EAGAIN>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:230
+#: build/C/man2/semop.2:237
 msgid ""
 "If I<sem_op> is less than zero, the process must have alter permission on "
 "the semaphore set.  If I<semval> is greater than or equal to the absolute "
 "value of I<sem_op>, the operation can proceed immediately: the absolute "
 "value of I<sem_op> is subtracted from I<semval>, and, if B<SEM_UNDO> is "
-"specified for this operation, the system updates the process undo count "
-"(I<semadj>)  for this semaphore.  If the absolute value of I<sem_op> is "
-"greater than I<semval>, and B<IPC_NOWAIT> is specified in I<sem_flg>, "
-"B<semop>()  fails, with I<errno> set to B<EAGAIN> (and none of the "
-"operations in I<sops> is performed).  Otherwise I<semncnt> (the counter of "
-"processes waiting for this semaphore's value to increase)  is incremented by "
-"one and the process sleeps until one of the following occurs:"
+"specified for this operation, the system adds the absolute value of "
+"I<sem_op> to the semaphore adjustment (I<semadj>)  value for this "
+"semaphore.  If the absolute value of I<sem_op> is greater than I<semval>, "
+"and B<IPC_NOWAIT> is specified in I<sem_flg>, B<semop>()  fails, with "
+"I<errno> set to B<EAGAIN> (and none of the operations in I<sops> is "
+"performed).  Otherwise I<semncnt> (the counter of threads waiting for this "
+"semaphore's value to increase)  is incremented by one and the thread sleeps "
+"until one of the following occurs:"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:245
+#: build/C/man2/semop.2:242
 msgid ""
-"I<semval> becomes greater than or equal to the absolute value of I<sem_op>, "
-"at which time the value of I<semncnt> is decremented, the absolute value of "
-"I<sem_op> is subtracted from I<semval> and, if B<SEM_UNDO> is specified for "
-"this operation, the system updates the process undo count (I<semadj>)  for "
-"this semaphore."
+"I<semval> becomes greater than or equal to the absolute value of I<sem_op>: "
+"the operation now proceeds, as described above."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:252
+#: build/C/man2/semop.2:249
 msgid ""
 "The semaphore set is removed from the system: B<semop>()  fails, with "
 "I<errno> set to B<EIDRM>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:262
+#: build/C/man2/semop.2:259
 msgid ""
-"The calling process catches a signal: the value of I<semncnt> is decremented "
+"The calling thread catches a signal: the value of I<semncnt> is decremented "
 "and B<semop>()  fails, with I<errno> set to B<EINTR>."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:271
+#: build/C/man2/semop.2:268
 msgid ""
 "The time limit specified by I<timeout> in a B<semtimedop>()  call expires: "
 "the system call fails, with I<errno> set to B<EAGAIN>."
@@ -2308,23 +2299,25 @@ msgstr ""
 #.  and
 #.  .I sem_ctime
 #. type: Plain text
-#: build/C/man2/semop.2:282
+#: build/C/man2/semop.2:279
 msgid ""
 "On successful completion, the I<sempid> value for each semaphore specified "
-"in the array pointed to by I<sops> is set to the process ID of the calling "
-"process.  In addition, the I<sem_otime> is set to the current time."
+"in the array pointed to by I<sops> is set to the caller's process ID.  In "
+"addition, the I<sem_otime> is set to the current time."
 msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semop.2:309
 msgid ""
 "B<semtimedop>()  behaves identically to B<semop>()  except that in those "
-"cases were the calling process would sleep, the duration of that sleep is "
+"cases where the calling thread would sleep, the duration of that sleep is "
 "limited by the amount of elapsed time specified by the I<timespec> structure "
-"whose address is passed in the I<timeout> argument.  If the specified time "
-"limit has been reached, B<semtimedop>()  fails with I<errno> set to "
-"B<EAGAIN> (and none of the operations in I<sops> is performed).  If the "
-"I<timeout> argument is NULL, then B<semtimedop>()  behaves exactly like "
+"whose address is passed in the I<timeout> argument.  (This sleep interval "
+"will be rounded up to the system clock granularity, and kernel scheduling "
+"delays mean that the interval may overrun by a small amount.)  If the "
+"specified time limit has been reached, B<semtimedop>()  fails with I<errno> "
+"set to B<EAGAIN> (and none of the operations in I<sops> is performed).  If "
+"the I<timeout> argument is NULL, then B<semtimedop>()  behaves exactly like "
 "B<semop>()."
 msgstr ""
 
@@ -2391,7 +2384,7 @@ msgstr ""
 #. type: Plain text
 #: build/C/man2/semop.2:367
 msgid ""
-"While blocked in this system call, the process caught a signal; see "
+"While blocked in this system call, the thread caught a signal; see "
 "B<signal>(7)."
 msgstr ""
 
@@ -2431,7 +2424,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:408
+#: build/C/man2/semop.2:421
 msgid ""
 "The I<sem_undo> structures of a process aren't inherited by the child "
 "produced by B<fork>(2), but they are inherited across an B<execve>(2)  "
@@ -2439,7 +2432,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:414
+#: build/C/man2/semop.2:427
 msgid ""
 "B<semop>()  is never automatically restarted after being interrupted by a "
 "signal handler, regardless of the setting of the B<SA_RESTART> flag when "
@@ -2447,36 +2440,41 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:429
+#: build/C/man2/semop.2:452
 msgid ""
-"I<semadj> is a per-process integer which is simply the (negative) count of "
-"all semaphore operations performed specifying the B<SEM_UNDO> flag.  When a "
+"A semaphore adjustment (I<semadj>)  value is a per-process, per-semaphore "
+"integer that is the negated sum of all operations performed on a semaphore "
+"specifying the B<SEM_UNDO> flag.  Each process has a list of I<semadj> "
+"values\\(emone value for each semaphore on which it has operated using "
+"B<SEM_UNDO>.  When a process terminates, each of its per-semaphore I<semadj> "
+"values is added to the corresponding semaphore, thus undoing the effect of "
+"that process's operations on the semaphore (but see BUGS below).  When a "
 "semaphore's value is directly set using the B<SETVAL> or B<SETALL> request "
 "to B<semctl>(2), the corresponding I<semadj> values in all processes are "
 "cleared."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:434
+#: build/C/man2/semop.2:457
 msgid ""
 "The I<semval>, I<sempid>, I<semzcnt>, and I<semnct> values for a semaphore "
 "can all be retrieved using appropriate B<semctl>(2)  calls."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:438
+#: build/C/man2/semop.2:461
 msgid "The following limits on semaphore set resources affect the B<semop>()  call:"
 msgstr ""
 
 #. type: TP
-#: build/C/man2/semop.2:438
+#: build/C/man2/semop.2:461
 #, no-wrap
 msgid "B<SEMOPM>"
 msgstr ""
 
 #.  This /proc file is not available in Linux 2.2 and earlier -- MTK
 #. type: Plain text
-#: build/C/man2/semop.2:446
+#: build/C/man2/semop.2:469
 msgid ""
 "Maximum number of operations allowed for one B<semop>()  call (32)  (on "
 "Linux, this limit can be read and modified via the third field of "
@@ -2484,12 +2482,12 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:451
+#: build/C/man2/semop.2:474
 msgid "Maximum allowable value for I<semval>: implementation dependent (32767)."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:458
+#: build/C/man2/semop.2:481
 msgid ""
 "The implementation has no intrinsic limits for the adjust on exit maximum "
 "value (B<SEMAEM>), the system wide maximum number of undo structures "
@@ -2498,7 +2496,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:479
+#: build/C/man2/semop.2:502
 msgid ""
 "When a process terminates, its set of associated I<semadj> structures is "
 "used to undo the effect of all of the semaphore operations it performed with "
@@ -2519,16 +2517,16 @@ msgstr ""
 #.  the fix:
 #.  http://marc.theaimsgroup.com/?l=linux-kernel&m=110261701025794&w=2
 #. type: Plain text
-#: build/C/man2/semop.2:488
+#: build/C/man2/semop.2:511
 msgid ""
 "In kernels 2.6.x, x E<lt>= 10, there is a bug that in some circumstances "
-"prevents a process that is waiting for a semaphore value to become zero from "
+"prevents a thread that is waiting for a semaphore value to become zero from "
 "being woken up when the value does actually become zero.  This bug is fixed "
 "in kernel 2.6.11."
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:493
+#: build/C/man2/semop.2:516
 msgid ""
 "The following code segment uses B<semop>()  to atomically wait for the value "
 "of semaphore 0 to become zero, and then increment the semaphore value by "
@@ -2536,7 +2534,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:497
+#: build/C/man2/semop.2:520
 #, no-wrap
 msgid ""
 "    struct sembuf sops[2];\n"
@@ -2544,13 +2542,13 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:499
+#: build/C/man2/semop.2:522
 #, no-wrap
 msgid "    /* Code to set I<semid> omitted */\n"
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:503
+#: build/C/man2/semop.2:526
 #, no-wrap
 msgid ""
 "    sops[0].sem_num = 0;        /* Operate on semaphore 0 */\n"
@@ -2559,7 +2557,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:507
+#: build/C/man2/semop.2:530
 #, no-wrap
 msgid ""
 "    sops[1].sem_num = 0;        /* Operate on semaphore 0 */\n"
@@ -2568,7 +2566,7 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:512
+#: build/C/man2/semop.2:535
 #, no-wrap
 msgid ""
 "    if (semop(semid, sops, 2) == -1) {\n"
@@ -2578,8 +2576,8 @@ msgid ""
 msgstr ""
 
 #. type: Plain text
-#: build/C/man2/semop.2:521
+#: build/C/man2/semop.2:545
 msgid ""
-"B<semctl>(2), B<semget>(2), B<sigaction>(2), B<capabilities>(7), "
-"B<sem_overview>(7), B<svipc>(7), B<time>(7)"
+"B<clone>(2), B<semctl>(2), B<semget>(2), B<sigaction>(2), "
+"B<capabilities>(7), B<sem_overview>(7), B<svipc>(7), B<time>(7)"
 msgstr ""