X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=po4a%2Fmemory%2Fpo%2Fmemory.pot;h=06efa22c347358cde96f06b1470cc19dbe71d565;hb=dd6314338ef10ff00e0c598821af4089599bb4b1;hp=1b8f833bd1342b4b466fe62b43c0b764f7ebb962;hpb=68e3d1cf58ed53145d40880db51e693f0a72354b;p=linuxjm%2FLDP_man-pages.git diff --git a/po4a/memory/po/memory.pot b/po4a/memory/po/memory.pot index 1b8f833b..06efa22c 100644 --- a/po4a/memory/po/memory.pot +++ b/po4a/memory/po/memory.pot @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2012-05-10 20:03+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 \n" "Language-Team: LANGUAGE \n" @@ -29,19 +29,19 @@ msgid "2007-05-31" msgstr "" #. type: TH -#: build/C/man2/alloc_hugepages.2:25 build/C/man2/cacheflush.2:24 build/C/man2/fallocate.2:8 build/C/man2/madvise.2:35 build/C/man3/malloc_trim.3:24 build/C/man3/mallopt.3:24 build/C/man2/mlock.2:27 build/C/man2/mmap.2:40 build/C/man2/mmap2.2:29 build/C/man2/mprotect.2:32 build/C/man2/mremap.2:31 build/C/man2/msync.2:25 build/C/man2/posix_fadvise.2:27 build/C/man2/readahead.2:28 build/C/man2/remap_file_pages.2:26 build/C/man3/shm_open.3:26 build/C/man7/shm_overview.7:27 build/C/man2/shmctl.2:43 build/C/man2/shmget.2:36 build/C/man2/shmop.2:39 build/C/man2/subpage_prot.2:28 build/C/man2/sync_file_range.2:30 +#: build/C/man2/alloc_hugepages.2:25 build/C/man2/cacheflush.2:25 build/C/man2/fallocate.2:11 build/C/man2/madvise.2:35 build/C/man3/mallinfo.3:26 build/C/man3/malloc_stats.3:26 build/C/man3/malloc_trim.3:26 build/C/man3/mallopt.3:26 build/C/man2/mlock.2:26 build/C/man2/mmap.2:40 build/C/man2/mmap2.2:29 build/C/man2/mprotect.2:38 build/C/man2/mremap.2:30 build/C/man2/msync.2:25 build/C/man2/posix_fadvise.2:28 build/C/man2/readahead.2:28 build/C/man2/remap_file_pages.2:28 build/C/man3/shm_open.3:26 build/C/man7/shm_overview.7:27 build/C/man2/shmctl.2:45 build/C/man2/shmget.2:38 build/C/man2/shmop.2:41 build/C/man2/subpage_prot.2:30 build/C/man2/sync_file_range.2:30 #, no-wrap msgid "Linux" msgstr "" #. type: TH -#: build/C/man2/alloc_hugepages.2:25 build/C/man3/alloca.3:41 build/C/man2/cacheflush.2:24 build/C/man2/fallocate.2:8 build/C/man2/madvise.2:35 build/C/man3/malloc_get_state.3:23 build/C/man3/malloc_hook.3:6 build/C/man3/malloc_trim.3:24 build/C/man3/malloc_usable_size.3:23 build/C/man3/mallopt.3:24 build/C/man3/mcheck.3:23 build/C/man2/mlock.2:27 build/C/man2/mmap.2:40 build/C/man2/mmap2.2:29 build/C/man2/mprotect.2:32 build/C/man2/mremap.2:31 build/C/man2/msync.2:25 build/C/man3/mtrace.3:23 build/C/man2/posix_fadvise.2:27 build/C/man3/posix_fallocate.3:23 build/C/man3/posix_memalign.3:28 build/C/man2/readahead.2:28 build/C/man2/remap_file_pages.2:26 build/C/man3/shm_open.3:26 build/C/man7/shm_overview.7:27 build/C/man2/shmctl.2:43 build/C/man2/shmget.2:36 build/C/man2/shmop.2:39 build/C/man2/subpage_prot.2:28 build/C/man2/sync_file_range.2:30 +#: build/C/man2/alloc_hugepages.2:25 build/C/man3/alloca.3:43 build/C/man2/cacheflush.2:25 build/C/man2/fallocate.2:11 build/C/man2/madvise.2:35 build/C/man3/mallinfo.3:26 build/C/man3/malloc_get_state.3:25 build/C/man3/malloc_hook.3:10 build/C/man3/malloc_info.3:25 build/C/man3/malloc_stats.3:26 build/C/man3/malloc_trim.3:26 build/C/man3/malloc_usable_size.3:25 build/C/man3/mallopt.3:26 build/C/man3/mcheck.3:25 build/C/man2/mlock.2:26 build/C/man2/mmap.2:40 build/C/man2/mmap2.2:29 build/C/man2/mprotect.2:38 build/C/man2/mremap.2:30 build/C/man2/msync.2:25 build/C/man3/mtrace.3:25 build/C/man2/posix_fadvise.2:28 build/C/man3/posix_fallocate.3:25 build/C/man3/posix_memalign.3:29 build/C/man2/readahead.2:28 build/C/man2/remap_file_pages.2:28 build/C/man3/shm_open.3:26 build/C/man7/shm_overview.7:27 build/C/man2/shmctl.2:45 build/C/man2/shmget.2:38 build/C/man2/shmop.2:41 build/C/man2/subpage_prot.2:30 build/C/man2/sync_file_range.2:30 #, no-wrap msgid "Linux Programmer's Manual" msgstr "" #. type: SH -#: build/C/man2/alloc_hugepages.2:26 build/C/man3/alloca.3:42 build/C/man2/cacheflush.2:25 build/C/man2/fallocate.2:9 build/C/man2/madvise.2:36 build/C/man3/malloc_get_state.3:24 build/C/man3/malloc_hook.3:7 build/C/man3/malloc_trim.3:25 build/C/man3/malloc_usable_size.3:24 build/C/man3/mallopt.3:25 build/C/man3/mcheck.3:24 build/C/man2/mlock.2:28 build/C/man2/mmap.2:41 build/C/man2/mmap2.2:30 build/C/man2/mprotect.2:33 build/C/man2/mremap.2:32 build/C/man2/msync.2:26 build/C/man3/mtrace.3:24 build/C/man2/posix_fadvise.2:28 build/C/man3/posix_fallocate.3:24 build/C/man3/posix_memalign.3:29 build/C/man2/readahead.2:29 build/C/man2/remap_file_pages.2:27 build/C/man3/shm_open.3:27 build/C/man7/shm_overview.7:28 build/C/man2/shmctl.2:44 build/C/man2/shmget.2:37 build/C/man2/shmop.2:40 build/C/man2/subpage_prot.2:29 build/C/man2/sync_file_range.2:31 +#: build/C/man2/alloc_hugepages.2:26 build/C/man3/alloca.3:44 build/C/man2/cacheflush.2:26 build/C/man2/fallocate.2:12 build/C/man2/madvise.2:36 build/C/man3/mallinfo.3:27 build/C/man3/malloc_get_state.3:26 build/C/man3/malloc_hook.3:11 build/C/man3/malloc_info.3:26 build/C/man3/malloc_stats.3:27 build/C/man3/malloc_trim.3:27 build/C/man3/malloc_usable_size.3:26 build/C/man3/mallopt.3:27 build/C/man3/mcheck.3:26 build/C/man2/mlock.2:27 build/C/man2/mmap.2:41 build/C/man2/mmap2.2:30 build/C/man2/mprotect.2:39 build/C/man2/mremap.2:31 build/C/man2/msync.2:26 build/C/man3/mtrace.3:26 build/C/man2/posix_fadvise.2:29 build/C/man3/posix_fallocate.3:26 build/C/man3/posix_memalign.3:30 build/C/man2/readahead.2:29 build/C/man2/remap_file_pages.2:29 build/C/man3/shm_open.3:27 build/C/man7/shm_overview.7:28 build/C/man2/shmctl.2:46 build/C/man2/shmget.2:39 build/C/man2/shmop.2:42 build/C/man2/subpage_prot.2:31 build/C/man2/sync_file_range.2:31 #, no-wrap msgid "NAME" msgstr "" @@ -52,7 +52,7 @@ msgid "alloc_hugepages, free_hugepages - allocate or free huge pages" msgstr "" #. type: SH -#: build/C/man2/alloc_hugepages.2:28 build/C/man3/alloca.3:44 build/C/man2/cacheflush.2:27 build/C/man2/fallocate.2:11 build/C/man2/madvise.2:38 build/C/man3/malloc_get_state.3:26 build/C/man3/malloc_hook.3:11 build/C/man3/malloc_trim.3:27 build/C/man3/malloc_usable_size.3:26 build/C/man3/mallopt.3:27 build/C/man3/mcheck.3:26 build/C/man2/mlock.2:30 build/C/man2/mmap.2:43 build/C/man2/mmap2.2:32 build/C/man2/mprotect.2:35 build/C/man2/mremap.2:34 build/C/man2/msync.2:28 build/C/man3/mtrace.3:26 build/C/man2/posix_fadvise.2:30 build/C/man3/posix_fallocate.3:26 build/C/man3/posix_memalign.3:31 build/C/man2/readahead.2:31 build/C/man2/remap_file_pages.2:29 build/C/man3/shm_open.3:29 build/C/man2/shmctl.2:46 build/C/man2/shmget.2:39 build/C/man2/shmop.2:42 build/C/man2/subpage_prot.2:31 build/C/man2/sync_file_range.2:33 +#: build/C/man2/alloc_hugepages.2:28 build/C/man3/alloca.3:46 build/C/man2/cacheflush.2:28 build/C/man2/fallocate.2:14 build/C/man2/madvise.2:38 build/C/man3/mallinfo.3:29 build/C/man3/malloc_get_state.3:28 build/C/man3/malloc_hook.3:15 build/C/man3/malloc_info.3:28 build/C/man3/malloc_stats.3:29 build/C/man3/malloc_trim.3:29 build/C/man3/malloc_usable_size.3:28 build/C/man3/mallopt.3:29 build/C/man3/mcheck.3:28 build/C/man2/mlock.2:29 build/C/man2/mmap.2:43 build/C/man2/mmap2.2:32 build/C/man2/mprotect.2:41 build/C/man2/mremap.2:33 build/C/man2/msync.2:28 build/C/man3/mtrace.3:28 build/C/man2/posix_fadvise.2:31 build/C/man3/posix_fallocate.3:28 build/C/man3/posix_memalign.3:32 build/C/man2/readahead.2:31 build/C/man2/remap_file_pages.2:31 build/C/man3/shm_open.3:29 build/C/man2/shmctl.2:48 build/C/man2/shmget.2:41 build/C/man2/shmop.2:44 build/C/man2/subpage_prot.2:33 build/C/man2/sync_file_range.2:33 #, no-wrap msgid "SYNOPSIS" msgstr "" @@ -76,7 +76,7 @@ msgid "BIB<);>\n" msgstr "" #. type: SH -#: build/C/man2/alloc_hugepages.2:38 build/C/man3/alloca.3:48 build/C/man2/cacheflush.2:33 build/C/man2/fallocate.2:19 build/C/man2/madvise.2:50 build/C/man3/malloc_get_state.3:34 build/C/man3/malloc_hook.3:29 build/C/man3/malloc_trim.3:31 build/C/man3/malloc_usable_size.3:30 build/C/man3/mallopt.3:31 build/C/man3/mcheck.3:39 build/C/man2/mlock.2:40 build/C/man2/mmap.2:52 build/C/man2/mmap2.2:39 build/C/man2/mprotect.2:41 build/C/man2/mremap.2:43 build/C/man2/msync.2:32 build/C/man3/mtrace.3:32 build/C/man2/posix_fadvise.2:49 build/C/man3/posix_fallocate.3:44 build/C/man3/posix_memalign.3:83 build/C/man2/readahead.2:38 build/C/man2/remap_file_pages.2:37 build/C/man3/shm_open.3:41 build/C/man7/shm_overview.7:30 build/C/man2/shmctl.2:54 build/C/man2/shmget.2:47 build/C/man2/shmop.2:51 build/C/man2/subpage_prot.2:36 build/C/man2/sync_file_range.2:41 +#: build/C/man2/alloc_hugepages.2:38 build/C/man3/alloca.3:50 build/C/man2/cacheflush.2:34 build/C/man2/fallocate.2:22 build/C/man2/madvise.2:50 build/C/man3/mallinfo.3:33 build/C/man3/malloc_get_state.3:36 build/C/man3/malloc_hook.3:33 build/C/man3/malloc_info.3:34 build/C/man3/malloc_stats.3:33 build/C/man3/malloc_trim.3:33 build/C/man3/malloc_usable_size.3:32 build/C/man3/mallopt.3:33 build/C/man3/mcheck.3:40 build/C/man2/mlock.2:39 build/C/man2/mmap.2:54 build/C/man2/mmap2.2:39 build/C/man2/mprotect.2:47 build/C/man2/mremap.2:42 build/C/man2/msync.2:32 build/C/man3/mtrace.3:34 build/C/man2/posix_fadvise.2:50 build/C/man3/posix_fallocate.3:46 build/C/man3/posix_memalign.3:84 build/C/man2/readahead.2:38 build/C/man2/remap_file_pages.2:39 build/C/man3/shm_open.3:41 build/C/man7/shm_overview.7:30 build/C/man2/shmctl.2:56 build/C/man2/shmget.2:49 build/C/man2/shmop.2:53 build/C/man2/subpage_prot.2:41 build/C/man2/sync_file_range.2:41 #, no-wrap msgid "DESCRIPTION" msgstr "" @@ -142,7 +142,7 @@ msgid "" msgstr "" #. type: SH -#: build/C/man2/alloc_hugepages.2:109 build/C/man3/alloca.3:58 build/C/man2/cacheflush.2:52 build/C/man2/fallocate.2:109 build/C/man2/madvise.2:250 build/C/man3/malloc_get_state.3:59 build/C/man3/malloc_trim.3:49 build/C/man3/malloc_usable_size.3:38 build/C/man3/mallopt.3:377 build/C/man3/mcheck.3:128 build/C/man2/mlock.2:117 build/C/man2/mmap.2:373 build/C/man2/mmap2.2:54 build/C/man2/mprotect.2:72 build/C/man2/mremap.2:128 build/C/man2/msync.2:68 build/C/man2/posix_fadvise.2:86 build/C/man3/posix_fallocate.3:64 build/C/man3/posix_memalign.3:141 build/C/man2/readahead.2:65 build/C/man2/remap_file_pages.2:122 build/C/man3/shm_open.3:169 build/C/man2/shmctl.2:272 build/C/man2/shmget.2:178 build/C/man2/shmop.2:169 build/C/man2/subpage_prot.2:61 build/C/man2/sync_file_range.2:141 +#: build/C/man2/alloc_hugepages.2:109 build/C/man3/alloca.3:60 build/C/man2/cacheflush.2:53 build/C/man2/fallocate.2:112 build/C/man2/madvise.2:268 build/C/man3/malloc_get_state.3:61 build/C/man3/malloc_info.3:48 build/C/man3/malloc_trim.3:51 build/C/man3/malloc_usable_size.3:40 build/C/man3/mallopt.3:379 build/C/man3/mcheck.3:129 build/C/man2/mlock.2:116 build/C/man2/mmap.2:375 build/C/man2/mmap2.2:54 build/C/man2/mprotect.2:78 build/C/man2/mremap.2:127 build/C/man2/msync.2:68 build/C/man2/posix_fadvise.2:87 build/C/man3/posix_fallocate.3:66 build/C/man3/posix_memalign.3:142 build/C/man2/readahead.2:65 build/C/man2/remap_file_pages.2:124 build/C/man3/shm_open.3:171 build/C/man2/shmctl.2:279 build/C/man2/shmget.2:180 build/C/man2/shmop.2:171 build/C/man2/subpage_prot.2:66 build/C/man2/sync_file_range.2:141 #, no-wrap msgid "RETURN VALUE" msgstr "" @@ -156,13 +156,13 @@ msgid "" msgstr "" #. type: SH -#: build/C/man2/alloc_hugepages.2:118 build/C/man2/cacheflush.2:58 build/C/man2/fallocate.2:112 build/C/man2/madvise.2:257 build/C/man3/malloc_trim.3:54 build/C/man3/mallopt.3:382 build/C/man2/mlock.2:123 build/C/man2/mmap.2:390 build/C/man2/mmap2.2:61 build/C/man2/mprotect.2:79 build/C/man2/mremap.2:136 build/C/man2/msync.2:73 build/C/man2/posix_fadvise.2:89 build/C/man3/posix_fallocate.3:70 build/C/man3/posix_memalign.3:155 build/C/man2/readahead.2:71 build/C/man2/remap_file_pages.2:129 build/C/man3/shm_open.3:178 build/C/man2/shmctl.2:294 build/C/man2/shmget.2:182 build/C/man2/shmop.2:183 build/C/man2/subpage_prot.2:66 build/C/man2/sync_file_range.2:147 +#: build/C/man2/alloc_hugepages.2:118 build/C/man2/cacheflush.2:59 build/C/man2/fallocate.2:119 build/C/man2/madvise.2:275 build/C/man3/malloc_info.3:55 build/C/man3/malloc_trim.3:56 build/C/man3/mallopt.3:384 build/C/man2/mlock.2:122 build/C/man2/mmap.2:392 build/C/man2/mmap2.2:61 build/C/man2/mprotect.2:85 build/C/man2/mremap.2:135 build/C/man2/msync.2:73 build/C/man2/posix_fadvise.2:90 build/C/man3/posix_fallocate.3:72 build/C/man3/posix_memalign.3:157 build/C/man2/readahead.2:71 build/C/man2/remap_file_pages.2:131 build/C/man3/shm_open.3:180 build/C/man2/shmctl.2:301 build/C/man2/shmget.2:185 build/C/man2/shmop.2:185 build/C/man2/subpage_prot.2:71 build/C/man2/sync_file_range.2:147 #, no-wrap msgid "ERRORS" msgstr "" #. type: TP -#: build/C/man2/alloc_hugepages.2:119 build/C/man2/fallocate.2:151 +#: build/C/man2/alloc_hugepages.2:119 build/C/man2/fallocate.2:158 #, no-wrap msgid "B" msgstr "" @@ -194,7 +194,7 @@ msgid "" msgstr "" #. type: SH -#: build/C/man2/alloc_hugepages.2:130 build/C/man3/alloca.3:63 build/C/man2/cacheflush.2:74 build/C/man2/fallocate.2:188 build/C/man2/madvise.2:307 build/C/man3/malloc_get_state.3:84 build/C/man3/malloc_hook.3:76 build/C/man3/malloc_trim.3:58 build/C/man3/malloc_usable_size.3:46 build/C/man3/mallopt.3:390 build/C/man3/mcheck.3:144 build/C/man2/mlock.2:187 build/C/man2/mmap.2:483 build/C/man2/mmap2.2:77 build/C/man2/mprotect.2:107 build/C/man2/mremap.2:186 build/C/man2/msync.2:96 build/C/man3/mtrace.3:76 build/C/man2/posix_fadvise.2:111 build/C/man3/posix_fallocate.3:101 build/C/man3/posix_memalign.3:180 build/C/man2/readahead.2:87 build/C/man2/remap_file_pages.2:151 build/C/man3/shm_open.3:249 build/C/man7/shm_overview.7:101 build/C/man2/shmctl.2:366 build/C/man2/shmget.2:229 build/C/man2/shmop.2:226 build/C/man2/subpage_prot.2:91 build/C/man2/sync_file_range.2:180 +#: build/C/man2/alloc_hugepages.2:130 build/C/man3/alloca.3:65 build/C/man2/cacheflush.2:75 build/C/man2/fallocate.2:199 build/C/man2/madvise.2:325 build/C/man3/mallinfo.3:110 build/C/man3/malloc_get_state.3:86 build/C/man3/malloc_hook.3:80 build/C/man3/malloc_info.3:63 build/C/man3/malloc_stats.3:55 build/C/man3/malloc_trim.3:60 build/C/man3/malloc_usable_size.3:48 build/C/man3/mallopt.3:392 build/C/man3/mcheck.3:145 build/C/man2/mlock.2:186 build/C/man2/mmap.2:497 build/C/man2/mmap2.2:77 build/C/man2/mprotect.2:113 build/C/man2/mremap.2:185 build/C/man2/msync.2:96 build/C/man3/mtrace.3:78 build/C/man2/posix_fadvise.2:112 build/C/man3/posix_fallocate.3:103 build/C/man3/posix_memalign.3:182 build/C/man2/readahead.2:87 build/C/man2/remap_file_pages.2:153 build/C/man3/shm_open.3:251 build/C/man7/shm_overview.7:101 build/C/man2/shmctl.2:373 build/C/man2/shmget.2:232 build/C/man2/shmop.2:231 build/C/man2/subpage_prot.2:96 build/C/man2/sync_file_range.2:180 #, no-wrap msgid "CONFORMING TO" msgstr "" @@ -207,7 +207,7 @@ msgid "" msgstr "" #. type: SH -#: build/C/man2/alloc_hugepages.2:133 build/C/man3/alloca.3:71 build/C/man2/madvise.2:328 build/C/man3/malloc_get_state.3:86 build/C/man3/malloc_hook.3:78 build/C/man3/malloc_trim.3:60 build/C/man3/malloc_trim.3:72 build/C/man3/malloc_usable_size.3:48 build/C/man3/mcheck.3:146 build/C/man2/mlock.2:214 build/C/man2/mmap.2:501 build/C/man2/mmap2.2:79 build/C/man2/mprotect.2:116 build/C/man2/mremap.2:192 build/C/man3/mtrace.3:78 build/C/man2/posix_fadvise.2:120 build/C/man3/posix_memalign.3:219 build/C/man3/shm_open.3:255 build/C/man7/shm_overview.7:103 build/C/man2/shmctl.2:371 build/C/man2/shmget.2:235 build/C/man2/shmop.2:245 build/C/man2/subpage_prot.2:93 build/C/man2/sync_file_range.2:183 +#: build/C/man2/alloc_hugepages.2:133 build/C/man3/alloca.3:73 build/C/man2/madvise.2:346 build/C/man3/malloc_get_state.3:88 build/C/man3/malloc_hook.3:82 build/C/man3/malloc_info.3:65 build/C/man3/malloc_stats.3:57 build/C/man3/malloc_trim.3:62 build/C/man3/malloc_usable_size.3:50 build/C/man3/mcheck.3:147 build/C/man2/mlock.2:213 build/C/man2/mmap.2:515 build/C/man2/mmap2.2:79 build/C/man2/mprotect.2:122 build/C/man2/mremap.2:191 build/C/man3/mtrace.3:80 build/C/man2/posix_fadvise.2:121 build/C/man3/posix_memalign.3:221 build/C/man2/readahead.2:92 build/C/man3/shm_open.3:257 build/C/man7/shm_overview.7:103 build/C/man2/shmctl.2:378 build/C/man2/shmget.2:238 build/C/man2/shmop.2:250 build/C/man2/subpage_prot.2:98 build/C/man2/sync_file_range.2:183 #, no-wrap msgid "NOTES" msgstr "" @@ -216,9 +216,9 @@ msgstr "" #: build/C/man2/alloc_hugepages.2:141 msgid "" "These system calls are gone; they existed only in Linux 2.5.36 through to " -"2.5.54. Now the hugetlbfs file system can be used instead. Memory backed " -"by huge pages (if the CPU supports them) is obtained by using B(2) to " -"map files in this virtual file system." +"2.5.54. Now the hugetlbfs filesystem can be used instead. Memory backed by " +"huge pages (if the CPU supports them) is obtained by using B(2) to " +"map files in this virtual filesystem." msgstr "" #. type: Plain text @@ -229,54 +229,54 @@ msgid "" msgstr "" #. type: SH -#: build/C/man2/alloc_hugepages.2:150 build/C/man3/alloca.3:153 build/C/man2/cacheflush.2:88 build/C/man2/fallocate.2:195 build/C/man2/madvise.2:360 build/C/man3/malloc_get_state.3:112 build/C/man3/malloc_hook.3:138 build/C/man3/malloc_trim.3:80 build/C/man3/malloc_usable_size.3:62 build/C/man3/mallopt.3:580 build/C/man3/mcheck.3:211 build/C/man2/mlock.2:337 build/C/man2/mmap.2:671 build/C/man2/mmap2.2:98 build/C/man2/mprotect.2:223 build/C/man2/mremap.2:214 build/C/man2/msync.2:122 build/C/man3/mtrace.3:170 build/C/man2/posix_fadvise.2:188 build/C/man3/posix_fallocate.3:130 build/C/man3/posix_memalign.3:275 build/C/man2/readahead.2:98 build/C/man2/remap_file_pages.2:162 build/C/man3/shm_open.3:280 build/C/man7/shm_overview.7:127 build/C/man2/shmctl.2:410 build/C/man2/shmget.2:298 build/C/man2/shmop.2:290 build/C/man2/subpage_prot.2:126 build/C/man2/sync_file_range.2:222 +#: build/C/man2/alloc_hugepages.2:150 build/C/man3/alloca.3:157 build/C/man2/cacheflush.2:89 build/C/man2/fallocate.2:207 build/C/man2/madvise.2:379 build/C/man3/mallinfo.3:279 build/C/man3/malloc_get_state.3:114 build/C/man3/malloc_hook.3:142 build/C/man3/malloc_info.3:262 build/C/man3/malloc_stats.3:67 build/C/man3/malloc_trim.3:82 build/C/man3/malloc_usable_size.3:64 build/C/man3/mallopt.3:580 build/C/man3/mcheck.3:208 build/C/man2/mlock.2:336 build/C/man2/mmap.2:737 build/C/man2/mmap2.2:98 build/C/man2/mprotect.2:229 build/C/man2/mremap.2:214 build/C/man2/msync.2:124 build/C/man3/mtrace.3:172 build/C/man2/posix_fadvise.2:197 build/C/man3/posix_fallocate.3:133 build/C/man3/posix_memalign.3:277 build/C/man2/readahead.2:103 build/C/man2/remap_file_pages.2:164 build/C/man3/shm_open.3:282 build/C/man7/shm_overview.7:127 build/C/man2/shmctl.2:431 build/C/man2/shmget.2:314 build/C/man2/shmop.2:295 build/C/man2/subpage_prot.2:134 build/C/man2/sync_file_range.2:226 #, no-wrap msgid "COLOPHON" msgstr "" #. type: Plain text -#: build/C/man2/alloc_hugepages.2:157 build/C/man3/alloca.3:160 build/C/man2/cacheflush.2:95 build/C/man2/fallocate.2:202 build/C/man2/madvise.2:367 build/C/man3/malloc_get_state.3:119 build/C/man3/malloc_hook.3:145 build/C/man3/malloc_trim.3:87 build/C/man3/malloc_usable_size.3:69 build/C/man3/mallopt.3:587 build/C/man3/mcheck.3:218 build/C/man2/mlock.2:344 build/C/man2/mmap.2:678 build/C/man2/mmap2.2:105 build/C/man2/mprotect.2:230 build/C/man2/mremap.2:221 build/C/man2/msync.2:129 build/C/man3/mtrace.3:177 build/C/man2/posix_fadvise.2:195 build/C/man3/posix_fallocate.3:137 build/C/man3/posix_memalign.3:282 build/C/man2/readahead.2:105 build/C/man2/remap_file_pages.2:169 build/C/man3/shm_open.3:287 build/C/man7/shm_overview.7:134 build/C/man2/shmctl.2:417 build/C/man2/shmget.2:305 build/C/man2/shmop.2:297 build/C/man2/subpage_prot.2:133 build/C/man2/sync_file_range.2:229 +#: build/C/man2/alloc_hugepages.2:157 build/C/man3/alloca.3:164 build/C/man2/cacheflush.2:96 build/C/man2/fallocate.2:214 build/C/man2/madvise.2:386 build/C/man3/mallinfo.3:286 build/C/man3/malloc_get_state.3:121 build/C/man3/malloc_hook.3:149 build/C/man3/malloc_info.3:269 build/C/man3/malloc_stats.3:74 build/C/man3/malloc_trim.3:89 build/C/man3/malloc_usable_size.3:71 build/C/man3/mallopt.3:587 build/C/man3/mcheck.3:215 build/C/man2/mlock.2:343 build/C/man2/mmap.2:744 build/C/man2/mmap2.2:105 build/C/man2/mprotect.2:236 build/C/man2/mremap.2:221 build/C/man2/msync.2:131 build/C/man3/mtrace.3:179 build/C/man2/posix_fadvise.2:204 build/C/man3/posix_fallocate.3:140 build/C/man3/posix_memalign.3:284 build/C/man2/readahead.2:110 build/C/man2/remap_file_pages.2:171 build/C/man3/shm_open.3:289 build/C/man7/shm_overview.7:134 build/C/man2/shmctl.2:438 build/C/man2/shmget.2:321 build/C/man2/shmop.2:302 build/C/man2/subpage_prot.2:141 build/C/man2/sync_file_range.2:233 msgid "" -"This page is part of release 3.40 of the Linux I project. A " +"This page is part of release 3.54 of the Linux I 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/man3/alloca.3:41 +#: build/C/man3/alloca.3:43 #, no-wrap msgid "ALLOCA" msgstr "" #. type: TH -#: build/C/man3/alloca.3:41 +#: build/C/man3/alloca.3:43 #, no-wrap -msgid "2008-01-24" +msgid "2013-05-12" msgstr "" #. type: TH -#: build/C/man3/alloca.3:41 build/C/man3/malloc_get_state.3:23 build/C/man3/malloc_hook.3:6 build/C/man3/malloc_usable_size.3:23 build/C/man3/mcheck.3:23 build/C/man3/mtrace.3:23 build/C/man3/posix_fallocate.3:23 build/C/man3/posix_memalign.3:28 +#: build/C/man3/alloca.3:43 build/C/man3/malloc_get_state.3:25 build/C/man3/malloc_hook.3:10 build/C/man3/malloc_info.3:25 build/C/man3/malloc_usable_size.3:25 build/C/man3/mcheck.3:25 build/C/man3/mtrace.3:25 build/C/man3/posix_fallocate.3:25 build/C/man3/posix_memalign.3:29 #, no-wrap msgid "GNU" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:44 +#: build/C/man3/alloca.3:46 msgid "alloca - allocate memory that is automatically freed" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:46 +#: build/C/man3/alloca.3:48 msgid "B<#include Ealloca.hE>" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:48 +#: build/C/man3/alloca.3:50 msgid "BIB<);>" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:58 +#: build/C/man3/alloca.3:60 msgid "" "The B() function allocates I bytes of space in the stack " "frame of the caller. This temporary space is automatically freed when the " @@ -284,7 +284,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:63 +#: build/C/man3/alloca.3:65 msgid "" "The B() function returns a pointer to the beginning of the " "allocated space. If the allocation causes stack overflow, program behavior " @@ -292,12 +292,12 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:65 +#: build/C/man3/alloca.3:67 msgid "This function is not in POSIX.1-2001." msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:71 +#: build/C/man3/alloca.3:73 msgid "" "There is evidence that the B() function appeared in 32V, PWB, " "PWB.2, 3BSD, and 4BSD. There is a man page for it in 4.3BSD. Linux uses " @@ -305,7 +305,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:86 +#: build/C/man3/alloca.3:88 msgid "" "The B() function is machine- and compiler-dependent. For certain " "applications, its use can improve efficiency compared to the use of " @@ -315,7 +315,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:95 +#: build/C/man3/alloca.3:97 msgid "" "Because the space allocated by B() is allocated within the stack " "frame, that space is automatically freed if the function return is jumped " @@ -323,40 +323,43 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:100 +#: build/C/man3/alloca.3:102 msgid "Do not attempt to B(3) space allocated by B()!" msgstr "" #. type: SS -#: build/C/man3/alloca.3:100 +#: build/C/man3/alloca.3:102 #, no-wrap -msgid "Notes on the GNU Version" +msgid "Notes on the GNU version" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:122 +#: build/C/man3/alloca.3:124 msgid "" "Normally, B(1) translates calls to B() with inlined code. " "This is not done when either the I<-ansi>, I<-std=c89>, I<-std=c99>, or the " -"I<-fno-builtin> option is given (and the header Ialloca.hE> is not " -"included). But beware! By default the glibc version of " -"Istdlib.hE> includes Ialloca.hE> and that contains the " -"line:" +"I<-std=c11> option is given B the header Ialloca.hE> is not " +"included. Otherwise (without an -ansi or -std=c* option) the glibc version " +"of Istdlib.hE> includes Ialloca.hE> and that contains " +"the lines:" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:125 +#: build/C/man3/alloca.3:129 #, no-wrap -msgid " #define alloca(size) __builtin_alloca (size)\n" +msgid "" +" #ifdef __GNUC__\n" +" #define alloca(size) __builtin_alloca (size)\n" +" #endif\n" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:128 +#: build/C/man3/alloca.3:132 msgid "with messy consequences if one has a private version of this function." msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:132 +#: build/C/man3/alloca.3:136 msgid "" "The fact that the code is inlined means that it is impossible to take the " "address of this function, or to change its behavior by linking with a " @@ -364,7 +367,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:136 +#: build/C/man3/alloca.3:140 msgid "" "The inlined code often consists of a single instruction adjusting the stack " "pointer, and does not check for stack overflow. Thus, there is no NULL " @@ -372,13 +375,13 @@ msgid "" msgstr "" #. type: SH -#: build/C/man3/alloca.3:136 build/C/man2/cacheflush.2:81 build/C/man3/mallopt.3:404 build/C/man2/mlock.2:305 build/C/man2/mmap.2:544 build/C/man3/mtrace.3:100 build/C/man2/posix_fadvise.2:177 build/C/man2/shmget.2:284 +#: build/C/man3/alloca.3:140 build/C/man2/cacheflush.2:82 build/C/man3/mallinfo.3:114 build/C/man3/mallopt.3:406 build/C/man2/mlock.2:304 build/C/man2/mmap.2:587 build/C/man3/mtrace.3:102 build/C/man2/posix_fadvise.2:186 build/C/man2/shmget.2:300 #, no-wrap msgid "BUGS" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:141 +#: build/C/man3/alloca.3:145 msgid "" "There is no error indication if the stack frame cannot be extended. " "(However, after a failed allocation, the program is likely to receive a " @@ -386,7 +389,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:149 +#: build/C/man3/alloca.3:153 msgid "" "On many systems B() cannot be used inside the list of arguments of " "a function call, because the stack space reserved by B() would " @@ -394,47 +397,47 @@ msgid "" msgstr "" #. type: SH -#: build/C/man3/alloca.3:149 build/C/man2/fallocate.2:191 build/C/man2/madvise.2:353 build/C/man3/malloc_get_state.3:109 build/C/man3/malloc_hook.3:133 build/C/man3/malloc_trim.3:76 build/C/man3/malloc_usable_size.3:60 build/C/man3/mallopt.3:568 build/C/man3/mcheck.3:204 build/C/man2/mlock.2:330 build/C/man2/mmap.2:653 build/C/man2/mmap2.2:92 build/C/man2/mprotect.2:220 build/C/man2/mremap.2:200 build/C/man2/msync.2:118 build/C/man3/mtrace.3:165 build/C/man2/posix_fadvise.2:182 build/C/man3/posix_fallocate.3:126 build/C/man3/posix_memalign.3:270 build/C/man2/readahead.2:92 build/C/man2/remap_file_pages.2:155 build/C/man3/shm_open.3:269 build/C/man7/shm_overview.7:114 build/C/man2/shmctl.2:403 build/C/man2/shmget.2:290 build/C/man2/shmop.2:282 build/C/man2/subpage_prot.2:120 build/C/man2/sync_file_range.2:217 +#: build/C/man3/alloca.3:153 build/C/man2/fallocate.2:202 build/C/man2/madvise.2:371 build/C/man3/mallinfo.3:270 build/C/man3/malloc_get_state.3:111 build/C/man3/malloc_hook.3:137 build/C/man3/malloc_info.3:256 build/C/man3/malloc_stats.3:61 build/C/man3/malloc_trim.3:78 build/C/man3/malloc_usable_size.3:62 build/C/man3/mallopt.3:566 build/C/man3/mcheck.3:204 build/C/man2/mlock.2:329 build/C/man2/mmap.2:712 build/C/man2/mmap2.2:92 build/C/man2/mprotect.2:226 build/C/man2/mremap.2:199 build/C/man2/msync.2:120 build/C/man3/mtrace.3:167 build/C/man2/posix_fadvise.2:191 build/C/man3/posix_fallocate.3:128 build/C/man3/posix_memalign.3:272 build/C/man2/readahead.2:97 build/C/man2/remap_file_pages.2:157 build/C/man3/shm_open.3:271 build/C/man7/shm_overview.7:114 build/C/man2/shmctl.2:424 build/C/man2/shmget.2:306 build/C/man2/shmop.2:287 build/C/man2/subpage_prot.2:128 build/C/man2/sync_file_range.2:221 #, no-wrap msgid "SEE ALSO" msgstr "" #. type: Plain text -#: build/C/man3/alloca.3:153 +#: build/C/man3/alloca.3:157 msgid "B(2), B(3), B(3)" msgstr "" #. type: TH -#: build/C/man2/cacheflush.2:24 +#: build/C/man2/cacheflush.2:25 #, no-wrap msgid "CACHEFLUSH" msgstr "" #. type: TH -#: build/C/man2/cacheflush.2:24 +#: build/C/man2/cacheflush.2:25 #, no-wrap msgid "2007-05-26" msgstr "" #. type: Plain text -#: build/C/man2/cacheflush.2:27 +#: build/C/man2/cacheflush.2:28 msgid "cacheflush - flush contents of instruction and/or data cache" msgstr "" #. type: Plain text -#: build/C/man2/cacheflush.2:30 +#: build/C/man2/cacheflush.2:31 #, no-wrap msgid "B<#include Easm/cachectl.hE>\n" msgstr "" #. type: Plain text -#: build/C/man2/cacheflush.2:32 +#: build/C/man2/cacheflush.2:33 #, no-wrap msgid "BIB<, int >IB<, int >IB<);>\n" msgstr "" #. type: Plain text -#: build/C/man2/cacheflush.2:42 +#: build/C/man2/cacheflush.2:43 msgid "" "B() flushes the contents of the indicated cache(s) for the user " "addresses in the range I to I<(addr+nbytes-1)>. I may be one " @@ -442,66 +445,66 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/cacheflush.2:42 +#: build/C/man2/cacheflush.2:43 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/cacheflush.2:45 +#: build/C/man2/cacheflush.2:46 msgid "Flush the instruction cache." msgstr "" #. type: TP -#: build/C/man2/cacheflush.2:45 +#: build/C/man2/cacheflush.2:46 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/cacheflush.2:48 +#: build/C/man2/cacheflush.2:49 msgid "Write back to memory and invalidate the affected valid cache lines." msgstr "" #. type: TP -#: build/C/man2/cacheflush.2:48 +#: build/C/man2/cacheflush.2:49 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/cacheflush.2:52 +#: build/C/man2/cacheflush.2:53 msgid "Same as B<(ICACHE|DCACHE)>." msgstr "" #. type: Plain text -#: build/C/man2/cacheflush.2:58 +#: build/C/man2/cacheflush.2:59 msgid "" "B() returns 0 on success or -1 on error. If errors are " "detected, I will indicate the error." msgstr "" #. type: TP -#: build/C/man2/cacheflush.2:59 build/C/man2/mmap2.2:62 build/C/man2/mremap.2:143 build/C/man2/shmctl.2:303 build/C/man2/subpage_prot.2:67 +#: build/C/man2/cacheflush.2:60 build/C/man2/mmap2.2:62 build/C/man2/mremap.2:142 build/C/man2/shmctl.2:310 build/C/man2/subpage_prot.2:72 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/cacheflush.2:66 +#: build/C/man2/cacheflush.2:67 msgid "" "Some or all of the address range I to I<(addr+nbytes-1)> is not " "accessible." msgstr "" #. type: TP -#: build/C/man2/cacheflush.2:66 build/C/man2/fallocate.2:124 build/C/man2/madvise.2:264 build/C/man2/mlock.2:158 build/C/man2/mlock.2:165 build/C/man2/mlock.2:177 build/C/man2/mmap.2:421 build/C/man2/mmap.2:429 build/C/man2/mmap.2:434 build/C/man2/mmap2.2:65 build/C/man2/mprotect.2:89 build/C/man2/mremap.2:152 build/C/man2/msync.2:80 build/C/man2/posix_fadvise.2:93 build/C/man3/posix_fallocate.3:79 build/C/man3/posix_memalign.3:156 build/C/man2/readahead.2:76 build/C/man2/remap_file_pages.2:130 build/C/man2/remap_file_pages.2:137 build/C/man3/shm_open.3:211 build/C/man2/shmctl.2:317 build/C/man2/shmget.2:196 build/C/man2/shmop.2:195 build/C/man2/shmop.2:218 build/C/man2/subpage_prot.2:72 build/C/man2/sync_file_range.2:152 +#: build/C/man2/cacheflush.2:67 build/C/man2/fallocate.2:131 build/C/man2/madvise.2:282 build/C/man3/malloc_info.3:56 build/C/man2/mlock.2:157 build/C/man2/mlock.2:164 build/C/man2/mlock.2:176 build/C/man2/mmap.2:423 build/C/man2/mmap.2:431 build/C/man2/mmap.2:436 build/C/man2/mmap2.2:65 build/C/man2/mprotect.2:95 build/C/man2/mremap.2:151 build/C/man2/msync.2:80 build/C/man2/posix_fadvise.2:94 build/C/man3/posix_fallocate.3:81 build/C/man3/posix_memalign.3:158 build/C/man2/readahead.2:76 build/C/man2/remap_file_pages.2:132 build/C/man2/remap_file_pages.2:139 build/C/man3/shm_open.3:213 build/C/man2/shmctl.2:324 build/C/man2/shmget.2:199 build/C/man2/shmop.2:200 build/C/man2/shmop.2:223 build/C/man2/subpage_prot.2:77 build/C/man2/sync_file_range.2:152 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/cacheflush.2:74 +#: build/C/man2/cacheflush.2:75 msgid "I is not one of B, B, or B." msgstr "" @@ -510,38 +513,38 @@ msgstr "" #. Investigate the details and update this page. #. Irix 6.5 appears to have a cacheflush() syscall -- mtk #. type: Plain text -#: build/C/man2/cacheflush.2:81 +#: build/C/man2/cacheflush.2:82 msgid "" -"This Linux-specific system call is only available on MIPS-based systems. It " +"This Linux-specific system call is available only on MIPS-based systems. It " "should not be used in programs intended to be portable." msgstr "" #. type: Plain text -#: build/C/man2/cacheflush.2:88 +#: build/C/man2/cacheflush.2:89 msgid "" "The current implementation ignores the I and I arguments. " "Therefore, the whole cache is always flushed." msgstr "" #. type: TH -#: build/C/man2/fallocate.2:8 +#: build/C/man2/fallocate.2:11 #, no-wrap msgid "FALLOCATE" msgstr "" #. type: TH -#: build/C/man2/fallocate.2:8 +#: build/C/man2/fallocate.2:11 #, no-wrap -msgid "2012-04-23" +msgid "2013-06-10" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:11 +#: build/C/man2/fallocate.2:14 msgid "fallocate - manipulate file space" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:15 build/C/man2/readahead.2:35 +#: build/C/man2/fallocate.2:18 build/C/man2/readahead.2:35 #, no-wrap msgid "" "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n" @@ -549,7 +552,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:18 +#: build/C/man2/fallocate.2:21 #, no-wrap msgid "" "BIB<, int >IB<, off_t >IB<, off_t " @@ -557,7 +560,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:24 +#: build/C/man2/fallocate.2:27 msgid "" "This is a nonportable, Linux-specific system call. For the portable, " "POSIX.1-specified method of ensuring that space is allocated for a file, see " @@ -565,7 +568,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:34 +#: build/C/man2/fallocate.2:37 msgid "" "B() allows the caller to directly manipulate the allocated disk " "space for the file referred to by I for the byte range starting at " @@ -573,7 +576,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:39 +#: build/C/man2/fallocate.2:42 msgid "" "The I argument determines the operation to be performed on the given " "range. Details of the supported operations are given in the subsections " @@ -581,13 +584,13 @@ msgid "" msgstr "" #. type: SS -#: build/C/man2/fallocate.2:39 +#: build/C/man2/fallocate.2:42 #, no-wrap msgid "Allocating disk space" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:58 +#: build/C/man2/fallocate.2:61 msgid "" "The default operation (i.e., I is zero) of B() allocates " "and initializes to zero the disk space within the range specified by " @@ -599,7 +602,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:64 +#: build/C/man2/fallocate.2:67 msgid "" "After a successful call, subsequent writes into the range specified by " "I and I are guaranteed not to fail because of lack of disk " @@ -607,7 +610,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:75 +#: build/C/man2/fallocate.2:78 msgid "" "If the B flag is specified in I, the behavior of " "the call is similar, but the file size will not be changed even if " @@ -617,31 +620,31 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:79 +#: build/C/man2/fallocate.2:82 msgid "" "Because allocation is done in block size chunks, B() may " "allocate a larger range of disk space than was specified." msgstr "" #. type: SS -#: build/C/man2/fallocate.2:79 +#: build/C/man2/fallocate.2:82 #, no-wrap msgid "Deallocating file space" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:94 +#: build/C/man2/fallocate.2:97 msgid "" "Specifying the B flag (available since Linux 2.6.38) " "in I deallocates space (i.e., creates a hole) in the byte range " "starting at I and continuing for I bytes. Within the specified " -"range, partial file system blocks are zeroed, and whole file system blocks " -"are removed from the file. After a successful call, subsequent reads from " -"this range will return zeroes." +"range, partial filesystem blocks are zeroed, and whole filesystem blocks are " +"removed from the file. After a successful call, subsequent reads from this " +"range will return zeroes." msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:105 +#: build/C/man2/fallocate.2:108 msgid "" "The B flag must be ORed with B in " "I; in other words, even when punching off the end of the file, the " @@ -649,119 +652,121 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:109 +#: build/C/man2/fallocate.2:112 msgid "" -"Not all file systems support B; if a file system " -"doesn't support the operation, an error is returned." +"Not all filesystems support B; if a filesystem doesn't " +"support the operation, an error is returned." msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:112 -msgid "B() returns zero on success, and -1 on failure." +#: build/C/man2/fallocate.2:119 +msgid "" +"On success, B() returns zero. On error, -1 is returned and " +"I is set to indicate the error." msgstr "" #. type: TP -#: build/C/man2/fallocate.2:113 build/C/man2/madvise.2:261 build/C/man2/mmap.2:415 build/C/man2/posix_fadvise.2:90 build/C/man3/posix_fallocate.3:71 build/C/man2/readahead.2:72 build/C/man2/sync_file_range.2:148 +#: build/C/man2/fallocate.2:120 build/C/man2/madvise.2:279 build/C/man2/mmap.2:417 build/C/man2/posix_fadvise.2:91 build/C/man3/posix_fallocate.3:73 build/C/man2/readahead.2:72 build/C/man2/sync_file_range.2:148 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:117 build/C/man3/posix_fallocate.3:75 +#: build/C/man2/fallocate.2:124 build/C/man3/posix_fallocate.3:77 msgid "I is not a valid file descriptor, or is not opened for writing." msgstr "" #. type: TP -#: build/C/man2/fallocate.2:117 build/C/man3/posix_fallocate.3:75 +#: build/C/man2/fallocate.2:124 build/C/man3/posix_fallocate.3:77 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:121 +#: build/C/man2/fallocate.2:128 msgid "I+I exceeds the maximum file size." msgstr "" #. type: TP -#: build/C/man2/fallocate.2:121 +#: build/C/man2/fallocate.2:128 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:124 +#: build/C/man2/fallocate.2:131 msgid "A signal was caught during execution." msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:136 build/C/man3/posix_fallocate.3:85 +#: build/C/man2/fallocate.2:143 build/C/man3/posix_fallocate.3:87 msgid "I was less than 0, or I was less than or equal to 0." msgstr "" #. type: TP -#: build/C/man2/fallocate.2:136 build/C/man2/madvise.2:292 build/C/man2/sync_file_range.2:160 +#: build/C/man2/fallocate.2:143 build/C/man2/madvise.2:310 build/C/man2/sync_file_range.2:160 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:139 -msgid "An I/O error occurred while reading from or writing to a file system." +#: build/C/man2/fallocate.2:146 +msgid "An I/O error occurred while reading from or writing to a filesystem." msgstr "" #. type: TP -#: build/C/man2/fallocate.2:139 build/C/man2/mmap.2:450 build/C/man3/posix_fallocate.3:85 +#: build/C/man2/fallocate.2:146 build/C/man2/mmap.2:452 build/C/man3/posix_fallocate.3:87 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:146 +#: build/C/man2/fallocate.2:153 msgid "" "I does not refer to a regular file or a directory. (If I is a pipe " "or FIFO, a different error results.)" msgstr "" #. type: TP -#: build/C/man2/fallocate.2:146 build/C/man3/posix_fallocate.3:89 build/C/man2/shmget.2:214 build/C/man2/sync_file_range.2:166 +#: build/C/man2/fallocate.2:153 build/C/man3/posix_fallocate.3:91 build/C/man2/shmget.2:217 build/C/man2/sync_file_range.2:166 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:151 build/C/man3/posix_fallocate.3:94 +#: build/C/man2/fallocate.2:158 build/C/man3/posix_fallocate.3:96 msgid "" "There is not enough space left on the device containing the file referred to " "by I." msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:155 +#: build/C/man2/fallocate.2:162 msgid "This kernel does not implement B()." msgstr "" #. type: TP -#: build/C/man2/fallocate.2:155 +#: build/C/man2/fallocate.2:162 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:164 +#: build/C/man2/fallocate.2:171 msgid "" -"The file system containing the file referred to by I does not support " -"this operation; or the I is not supported by the file system " -"containing the file referred to by I." +"The filesystem containing the file referred to by I does not support " +"this operation; or the I is not supported by the filesystem containing " +"the file referred to by I." msgstr "" #. type: TP -#: build/C/man2/fallocate.2:164 build/C/man2/mlock.2:144 build/C/man2/mlock.2:183 build/C/man2/mmap.2:458 build/C/man2/shmctl.2:342 build/C/man2/shmget.2:222 +#: build/C/man2/fallocate.2:171 build/C/man2/mlock.2:143 build/C/man2/mlock.2:182 build/C/man2/mmap.2:460 build/C/man2/shmctl.2:349 build/C/man2/shmget.2:225 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:180 +#: build/C/man2/fallocate.2:187 msgid "" "The file referred to by I is marked immutable (see B(1)). Or: " "I specifies B and the file referred to by I " @@ -769,37 +774,39 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/fallocate.2:180 build/C/man2/posix_fadvise.2:96 build/C/man3/posix_fallocate.3:94 build/C/man2/sync_file_range.2:169 +#: build/C/man2/fallocate.2:187 build/C/man2/posix_fadvise.2:97 build/C/man3/posix_fallocate.3:96 build/C/man2/sync_file_range.2:169 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:184 +#: build/C/man2/fallocate.2:191 msgid "I refers to a pipe or FIFO." msgstr "" #. type: SH -#: build/C/man2/fallocate.2:184 build/C/man3/mcheck.3:133 build/C/man2/mmap2.2:74 build/C/man2/posix_fadvise.2:103 build/C/man3/posix_fallocate.3:98 build/C/man3/posix_memalign.3:165 build/C/man2/readahead.2:82 build/C/man2/remap_file_pages.2:146 build/C/man3/shm_open.3:247 build/C/man2/subpage_prot.2:85 build/C/man2/sync_file_range.2:177 +#: build/C/man2/fallocate.2:191 build/C/man3/malloc_info.3:60 build/C/man3/mcheck.3:134 build/C/man2/mmap2.2:74 build/C/man2/posix_fadvise.2:104 build/C/man3/posix_fallocate.3:100 build/C/man3/posix_memalign.3:167 build/C/man2/readahead.2:82 build/C/man2/remap_file_pages.2:148 build/C/man3/shm_open.3:249 build/C/man2/subpage_prot.2:90 build/C/man2/sync_file_range.2:177 #, no-wrap msgid "VERSIONS" msgstr "" +#. See http://sourceware.org/bugzilla/show_bug.cgi?id=14964 #. type: Plain text -#: build/C/man2/fallocate.2:188 +#: build/C/man2/fallocate.2:199 msgid "" "B() is available on Linux since kernel 2.6.23. Support is " -"provided by glibc since version 2.10." +"provided by glibc since version 2.10. The B flags are defined " +"in glibc headers only since version 2.18." msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:191 +#: build/C/man2/fallocate.2:202 msgid "B() is Linux-specific." msgstr "" #. type: Plain text -#: build/C/man2/fallocate.2:195 -msgid "B(2), B(3), B(3)" +#: build/C/man2/fallocate.2:207 +msgid "B(1), B(2), B(3), B(3)" msgstr "" #. type: TH @@ -811,7 +818,7 @@ msgstr "" #. type: TH #: build/C/man2/madvise.2:35 #, no-wrap -msgid "2011-09-18" +msgid "2012-04-28" msgstr "" #. type: Plain text @@ -830,7 +837,7 @@ msgid "BIB<, size_t >IB<, int >IB<);>" msgstr "" #. type: Plain text -#: build/C/man2/madvise.2:46 build/C/man2/posix_fadvise.2:42 build/C/man3/posix_fallocate.3:37 build/C/man3/posix_memalign.3:48 +#: build/C/man2/madvise.2:46 build/C/man2/posix_fadvise.2:43 build/C/man3/posix_fallocate.3:39 build/C/man3/posix_memalign.3:49 msgid "Feature Test Macro Requirements for glibc (see B(7)):" msgstr "" @@ -939,7 +946,7 @@ msgstr "" #: build/C/man2/madvise.2:113 msgid "" "Free up a given range of pages and its associated backing store. Currently, " -"only shmfs/tmpfs supports this; other file systems return with the error " +"only shmfs/tmpfs supports this; other filesystems return with the error " "B." msgstr "" @@ -1004,10 +1011,10 @@ msgstr "" #: build/C/man2/madvise.2:162 msgid "" "Poison a page and handle it like a hardware memory corruption. This " -"operation is only available for privileged (B) processes. " +"operation is available only for privileged (B) processes. " "This operation may result in the calling process receiving a B and " "the page being unmapped. This feature is intended for testing of memory " -"error-handling code; it is only available if the kernel was configured with " +"error-handling code; it is available only if the kernel was configured with " "B." msgstr "" @@ -1027,7 +1034,7 @@ msgid "" "out of normal memory management). The effect of the B " "operation is invisible to (i.e., does not change the semantics of) the " "calling process. This feature is intended for testing of memory " -"error-handling code; it is only available if the kernel was configured with " +"error-handling code; it is available only if the kernel was configured with " "B." msgstr "" @@ -1045,12 +1052,12 @@ msgid "" "memory that have been marked as mergeable, looking for pages with identical " "content. These are replaced by a single write-protected page (which is " "automatically copied if a process later wants to update the content of the " -"page). KSM only merges private anonymous pages (see B(2)). The KSM " +"page). KSM merges only private anonymous pages (see B(2)). The KSM " "feature is intended for applications that generate many instances of the " "same data (e.g., virtualization systems such as KVM). It can consume a lot " -"of processing power; use with care. See the kernel source file " +"of processing power; use with care. See the Linux kernel source file " "I for more details. The B and " -"B operations are only available if the kernel was " +"B operations are available only if the kernel was " "configured with B." msgstr "" @@ -1080,19 +1087,19 @@ msgstr "" #: build/C/man2/madvise.2:243 msgid "" "Enables Transparent Huge Pages (THP) for pages in the range specified by " -"I and I. Currently, Transparent Huge Pages only work with " +"I and I. Currently, Transparent Huge Pages work only with " "private anonymous pages (see B(2)). The kernel will regularly scan " "the areas marked as huge page candidates to replace them with huge pages. " "The kernel will also allocate huge pages directly when the region is " "naturally aligned to the huge page size (see B(2)). This " "feature is primarily aimed at applications that use large mappings of data " -"and access large regions of that memory at a time (e.g. virtualization " -"systems such as QEMU). It can very easily waste memory (e.g. a 2MB mapping " +"and access large regions of that memory at a time (e.g., virtualization " +"systems such as QEMU). It can very easily waste memory (e.g., a 2MB mapping " "that only ever accesses 1 byte will result in 2MB of wired memory instead of " -"one 4KB page). See the kernel source file I " -"for more details. The B and B operations " -"are only available if the kernel was configured with " -"B." +"one 4KB page). See the Linux kernel source file " +"I for more details. The B " +"and B operations are available only if the kernel was " +"configured with B." msgstr "" #. type: TP @@ -1108,36 +1115,63 @@ msgid "" "will not be collapsed into huge pages." msgstr "" +#. type: TP +#: build/C/man2/madvise.2:250 +#, no-wrap +msgid "B (since Linux 3.4)" +msgstr "" + +#. type: Plain text +#: build/C/man2/madvise.2:264 +msgid "" +"Exclude from a core dump those pages in the range specified by I and " +"I. This is useful in applications that have large areas of memory " +"that are known not to be useful in a core dump. The effect of " +"B takes precedence over the bit mask that is set via the " +"I file (see B(5))." +msgstr "" + +#. type: TP +#: build/C/man2/madvise.2:264 +#, no-wrap +msgid "B (since Linux 3.4)" +msgstr "" + +#. type: Plain text +#: build/C/man2/madvise.2:268 +msgid "Undo the effect of an earlier B." +msgstr "" + #. type: Plain text -#: build/C/man2/madvise.2:257 +#: build/C/man2/madvise.2:275 msgid "" "On success B() returns zero. On error, it returns -1 and I " "is set appropriately." msgstr "" #. type: TP -#: build/C/man2/madvise.2:258 build/C/man2/mlock.2:155 build/C/man2/mmap.2:411 build/C/man2/mremap.2:137 +#: build/C/man2/madvise.2:276 build/C/man2/mlock.2:154 build/C/man2/mmap.2:413 build/C/man2/mremap.2:136 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/madvise.2:261 +#: build/C/man2/madvise.2:279 msgid "A kernel resource was temporarily unavailable." msgstr "" #. type: Plain text -#: build/C/man2/madvise.2:264 +#: build/C/man2/madvise.2:282 msgid "The map exists, but the area maps something that isn't a file." msgstr "" #. type: Plain text -#: build/C/man2/madvise.2:267 +#: build/C/man2/madvise.2:285 msgid "This error can occur for the following reasons:" msgstr "" #. type: IP -#: build/C/man2/madvise.2:268 build/C/man2/madvise.2:274 build/C/man2/madvise.2:277 build/C/man2/madvise.2:280 build/C/man2/madvise.2:283 build/C/man3/mallopt.3:233 build/C/man3/mallopt.3:239 +#: build/C/man2/madvise.2:286 build/C/man2/madvise.2:292 build/C/man2/madvise.2:295 build/C/man2/madvise.2:298 build/C/man2/madvise.2:301 build/C/man3/mallopt.3:235 build/C/man3/mallopt.3:241 #, no-wrap msgid "*" msgstr "" @@ -1145,62 +1179,62 @@ msgstr "" #. .I len #. is zero, #. type: Plain text -#: build/C/man2/madvise.2:274 +#: build/C/man2/madvise.2:292 msgid "The value I is negative." msgstr "" #. type: Plain text -#: build/C/man2/madvise.2:277 +#: build/C/man2/madvise.2:295 msgid "I is not page-aligned." msgstr "" #. type: Plain text -#: build/C/man2/madvise.2:280 +#: build/C/man2/madvise.2:298 msgid "I is not a valid value" msgstr "" #. type: Plain text -#: build/C/man2/madvise.2:283 +#: build/C/man2/madvise.2:301 msgid "" "The application is attempting to release locked or shared pages (with " "B)." msgstr "" #. type: Plain text -#: build/C/man2/madvise.2:291 +#: build/C/man2/madvise.2:309 msgid "" "B or B was specified in I, but the " "kernel was not configured with B." msgstr "" #. type: Plain text -#: build/C/man2/madvise.2:298 +#: build/C/man2/madvise.2:316 msgid "" "(for B) Paging in this area would exceed the process's " "maximum resident set size." msgstr "" #. type: TP -#: build/C/man2/madvise.2:298 build/C/man2/madvise.2:303 build/C/man2/mlock.2:124 build/C/man2/mlock.2:132 build/C/man2/mlock.2:170 build/C/man2/mmap.2:454 build/C/man2/mprotect.2:94 build/C/man2/mprotect.2:97 build/C/man2/mremap.2:180 build/C/man2/msync.2:93 build/C/man3/posix_memalign.3:162 build/C/man2/shmctl.2:326 build/C/man2/shmget.2:211 build/C/man2/shmop.2:209 build/C/man2/subpage_prot.2:82 build/C/man2/sync_file_range.2:163 +#: build/C/man2/madvise.2:316 build/C/man2/madvise.2:321 build/C/man2/mlock.2:123 build/C/man2/mlock.2:131 build/C/man2/mlock.2:169 build/C/man2/mmap.2:456 build/C/man2/mprotect.2:100 build/C/man2/mprotect.2:103 build/C/man2/mremap.2:179 build/C/man2/msync.2:93 build/C/man3/posix_memalign.3:164 build/C/man2/shmctl.2:333 build/C/man2/shmget.2:214 build/C/man2/shmop.2:214 build/C/man2/subpage_prot.2:87 build/C/man2/sync_file_range.2:163 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/madvise.2:303 +#: build/C/man2/madvise.2:321 msgid "(for B) Not enough memory: paging in failed." msgstr "" #. type: Plain text -#: build/C/man2/madvise.2:307 +#: build/C/man2/madvise.2:325 msgid "" "Addresses in the specified range are not currently mapped, or are outside " "the address space of the process." msgstr "" -#. FIXME . Write a posix_fadvise(3) page. +#. FIXME . Write a posix_madvise(3) page. #. type: Plain text -#: build/C/man2/madvise.2:319 +#: build/C/man2/madvise.2:337 msgid "" "POSIX.1b. POSIX.1-2001 describes B(3) with constants " "B, etc., with a behavior close to that described here. " @@ -1208,20 +1242,20 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/madvise.2:328 +#: build/C/man2/madvise.2:346 msgid "" "B, B, B, B, " "B, and B are Linux-specific." msgstr "" #. type: SS -#: build/C/man2/madvise.2:329 build/C/man2/mlock.2:268 build/C/man2/shmget.2:278 +#: build/C/man2/madvise.2:347 build/C/man2/mlock.2:267 build/C/man2/shmget.2:294 #, no-wrap -msgid "Linux Notes" +msgid "Linux notes" msgstr "" #. type: Plain text -#: build/C/man2/madvise.2:337 +#: build/C/man2/madvise.2:355 msgid "" "The current Linux implementation (2.4.0) views this system call more as a " "command than as advice and hence may return an error when it cannot do what " @@ -1234,7 +1268,7 @@ msgstr "" #. .BR madvise () #. function first appeared in 4.4BSD. #. type: Plain text -#: build/C/man2/madvise.2:353 +#: build/C/man2/madvise.2:371 msgid "" "The Linux implementation requires that the address I be page-aligned, " "and allows I to be zero. If there are some parts of the specified " @@ -1244,402 +1278,1254 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/madvise.2:360 +#: build/C/man2/madvise.2:379 msgid "" "B(2), B(2), B(2), B(2), B(2), " -"B(2)" +"B(2), B(5)" msgstr "" #. type: TH -#: build/C/man3/malloc_get_state.3:23 +#: build/C/man3/mallinfo.3:26 #, no-wrap -msgid "MALLOC_GET_STATE" +msgid "MALLINFO" msgstr "" #. type: TH -#: build/C/man3/malloc_get_state.3:23 +#: build/C/man3/mallinfo.3:26 build/C/man3/malloc_stats.3:26 #, no-wrap -msgid "2012-03-26" +msgid "2012-05-06" +msgstr "" + +#. type: Plain text +#: build/C/man3/mallinfo.3:29 +msgid "mallinfo - obtain memory allocation information" +msgstr "" + +#. type: Plain text +#: build/C/man3/mallinfo.3:31 build/C/man3/malloc_stats.3:31 build/C/man3/malloc_trim.3:31 build/C/man3/malloc_usable_size.3:30 build/C/man3/mallopt.3:31 +msgid "B<#include Emalloc.hE>" msgstr "" #. type: Plain text -#: build/C/man3/malloc_get_state.3:26 +#: build/C/man3/mallinfo.3:33 +msgid "B" +msgstr "" + +#. type: Plain text +#: build/C/man3/mallinfo.3:41 msgid "" -"get_malloc_state, set_malloc_state - record and restore state of malloc " -"implementation" +"The B() function returns a copy of a structure containing " +"information about memory allocations performed by B(3) and related " +"functions. This structure is defined as follows:" msgstr "" #. type: Plain text -#: build/C/man3/malloc_get_state.3:29 build/C/man3/posix_memalign.3:34 +#: build/C/man3/mallinfo.3:56 #, no-wrap -msgid "B<#include Estdlib.hE>\n" +msgid "" +"struct mallinfo {\n" +" int arena; /* Non-mmapped space allocated (bytes) */\n" +" int ordblks; /* Number of free chunks */\n" +" int smblks; /* Number of free fastbin blocks */\n" +" int hblks; /* Number of mmapped regions */\n" +" int hblkhd; /* Space allocated in mmapped regions (bytes) */\n" +" int usmblks; /* Maximum total allocated space (bytes) */\n" +" int fsmblks; /* Space in freed fastbin blocks (bytes) */\n" +" int uordblks; /* Total allocated space (bytes) */\n" +" int fordblks; /* Total free space (bytes) */\n" +" int keepcost; /* Top-most, releasable space (bytes) */\n" +"};\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/mallinfo.3:62 +msgid "The fields of the I structure contain the following information:" +msgstr "" + +#. type: TP +#: build/C/man3/mallinfo.3:62 +#, no-wrap +msgid "I" msgstr "" #. type: Plain text -#: build/C/man3/malloc_get_state.3:31 +#: build/C/man3/mallinfo.3:68 +msgid "" +"The total amount of memory allocated by means other than B(2) (i.e., " +"memory allocated on the heap). This figure includes both in-use blocks and " +"blocks on the free list." +msgstr "" + +#. type: TP +#: build/C/man3/mallinfo.3:68 #, no-wrap -msgid "B\n" +msgid "I" msgstr "" #. type: Plain text -#: build/C/man3/malloc_get_state.3:33 +#: build/C/man3/mallinfo.3:71 +msgid "The number of ordinary (i.e., non-fastbin) free blocks." +msgstr "" + +#. type: TP +#: build/C/man3/mallinfo.3:71 #, no-wrap -msgid "BIB<);>\n" +msgid "I" msgstr "" #. type: Plain text -#: build/C/man3/malloc_get_state.3:51 +#: build/C/man3/mallinfo.3:75 +msgid "The number of fastbin free blocks (see B(3))." +msgstr "" + +#. type: TP +#: build/C/man3/mallinfo.3:75 +#, no-wrap +msgid "I" +msgstr "" + +#. type: Plain text +#: build/C/man3/mallinfo.3:83 msgid "" -"The B() function records the current state of all " -"B(3) internal bookkeeping variables (but not the actual contents of " -"the heap or the state of B(3) functions pointers). The state " -"is recorded in a system-dependent opaque data structure dynamically " -"allocated via B(3), and a pointer to that data structure is returned " -"as the function result. (It is the caller's responsibility to B(3) " -"this memory.)" +"The number of blocks currently allocated using B(2). (See the " +"discussion of B in B(3).)" +msgstr "" + +#. type: TP +#: build/C/man3/mallinfo.3:83 +#, no-wrap +msgid "I" +msgstr "" + +#. type: Plain text +#: build/C/man3/mallinfo.3:87 +msgid "The number of bytes in blocks currently allocated using B(2)." +msgstr "" + +#. type: TP +#: build/C/man3/mallinfo.3:87 +#, no-wrap +msgid "I" msgstr "" #. type: Plain text -#: build/C/man3/malloc_get_state.3:59 +#: build/C/man3/mallinfo.3:92 msgid "" -"The B() function restores the state of all B(3) " -"internal bookkeeping variables to the values recorded in the opaque data " -"structure pointed to by I." +"The \"highwater mark\" for allocated space\\(emthat is, the maximum amount " +"of space that was ever allocated. This field is maintained only in " +"nonthreading environments." +msgstr "" + +#. type: TP +#: build/C/man3/mallinfo.3:92 +#, no-wrap +msgid "I" +msgstr "" + +#. type: Plain text +#: build/C/man3/mallinfo.3:95 +msgid "The total number of bytes in fastbin free blocks." +msgstr "" + +#. type: TP +#: build/C/man3/mallinfo.3:95 +#, no-wrap +msgid "I" +msgstr "" + +#. type: Plain text +#: build/C/man3/mallinfo.3:98 +msgid "The total number of bytes used by in-use allocations." +msgstr "" + +#. type: TP +#: build/C/man3/mallinfo.3:98 +#, no-wrap +msgid "I" +msgstr "" + +#. type: Plain text +#: build/C/man3/mallinfo.3:101 +msgid "The total number of bytes in free blocks." +msgstr "" + +#. type: TP +#: build/C/man3/mallinfo.3:101 +#, no-wrap +msgid "I" msgstr "" +#. .SH VERSIONS +#. Available already in glibc 2.0, possibly earlier #. type: Plain text -#: build/C/man3/malloc_get_state.3:66 +#: build/C/man3/mallinfo.3:110 msgid "" -"On success, B() returns a pointer to a newly allocated " -"opaque data structure. On error (for example, memory could not be allocated " -"for the data structure), B() returns NULL." +"The total amount of releasable free space at the top of the heap. This is " +"the maximum number of bytes that could ideally (i.e., ignoring page " +"alignment restrictions, and so on) be released by B(3)." msgstr "" -#. if(ms->magic != MALLOC_STATE_MAGIC) return -1; -#. /* Must fail if the major version is too high. */ -#. if((ms->version & ~0xffl) > (MALLOC_STATE_VERSION & ~0xffl)) return -2; #. type: Plain text -#: build/C/man3/malloc_get_state.3:84 +#: build/C/man3/mallinfo.3:114 msgid "" -"On success, B() returns 0. If the implementation detects " -"that I does not point to a correctly formed data structure, " -"B() returns -1. If the implementation detects that the " -"version of the data structure referred to by I is a more recent " -"version than this implementation knows about, B() returns " -"-2." +"This function is not specified by POSIX or the C standards. A similar " +"function exists on many System V derivatives, and was specified in the SVID." msgstr "" +#. FIXME http://sourceware.org/bugzilla/show_bug.cgi?id=208 +#. See the 24 Aug 2011 mail by Paul Pluzhnikov: +#. "[patch] Fix mallinfo() to accumulate results for all arenas" +#. on libc-alpha@sourceware.org #. type: Plain text -#: build/C/man3/malloc_get_state.3:86 build/C/man3/malloc_hook.3:78 build/C/man3/mcheck.3:146 build/C/man3/mtrace.3:78 -msgid "These functions are GNU extensions." +#: build/C/man3/mallinfo.3:126 +msgid "" +"B " +"Allocations in other arenas are excluded. See B(3) and " +"B(3) for alternatives that include information about other " +"arenas." msgstr "" #. type: Plain text -#: build/C/man3/malloc_get_state.3:92 +#: build/C/man3/mallinfo.3:134 msgid "" -"These functions are especially useful when using this B(3) " -"implementation as part of a shared library, and the heap contents are " -"saved/restored via some other method. This technique is used by the GNU " -"Emacs to implement its \"dumping\" function." +"The fields of the I structure are typed as I. However, " +"because some internal bookkeeping values may be of type I, the " +"reported values may wrap around zero and thus be inaccurate." +msgstr "" + +#. type: SH +#: build/C/man3/mallinfo.3:134 build/C/man3/malloc_hook.3:89 build/C/man3/malloc_info.3:84 build/C/man3/mallopt.3:466 build/C/man3/mcheck.3:159 build/C/man2/mmap.2:630 build/C/man2/mprotect.2:148 build/C/man3/mtrace.3:108 +#, no-wrap +msgid "EXAMPLE" msgstr "" -#. i.e., calls __malloc_check_init() -#. i.e., malloc checking is not already in use -#. and the caller requested malloc checking #. type: Plain text -#: build/C/man3/malloc_get_state.3:109 +#: build/C/man3/mallinfo.3:140 msgid "" -"Hook function pointers are never saved or restored by these functions, with " -"two exceptions: if malloc checking (see B(3)) was in use when " -"B() was called, then B() resets malloc " -"checking hooks if possible; if malloc checking was not in use in the " -"recorded state, but the caller has requested malloc checking, then the hooks " -"are reset to 0." +"The program below employs B() to retrieve memory allocation " +"statistics before and after allocating and freeing some blocks of memory. " +"The statistics are displayed on standard output." msgstr "" #. type: Plain text -#: build/C/man3/malloc_get_state.3:112 -msgid "B(3), B(3)" +#: build/C/man3/mallinfo.3:144 +msgid "" +"The first two command-line arguments specify the number and size of blocks " +"to be allocated with B(3)." msgstr "" -#. type: TH -#: build/C/man3/malloc_hook.3:6 +#. type: Plain text +#: build/C/man3/mallinfo.3:158 +msgid "" +"The remaining three arguments specify which of the allocated blocks should " +"be freed with B(3). These three arguments are optional, and specify " +"(in order): the step size to be used in the loop that frees blocks (the " +"default is 1, meaning free all blocks in the range); the ordinal position of " +"the first block to be freed (default 0, meaning the first allocated block); " +"and a number one greater than the ordinal position of the last block to be " +"freed (default is one greater than the maximum block number). If these " +"three arguments are omitted, then the defaults cause all allocated blocks to " +"be freed." +msgstr "" + +#. type: Plain text +#: build/C/man3/mallinfo.3:162 +msgid "" +"In the following example run of the program, 1000 allocations of 100 bytes " +"are performed, and then every second allocated block is freed:" +msgstr "" + +#. type: Plain text +#: build/C/man3/mallinfo.3:177 #, no-wrap -msgid "MALLOC_HOOK" +msgid "" +"$ B<./a.out 1000 100 2>\n" +"============== Before allocating blocks ==============\n" +"Total non-mmapped bytes (arena): 0\n" +"# of free chunks (ordblks): 1\n" +"# of free fastbin blocks (smblks): 0\n" +"# of mapped regions (hblks): 0\n" +"Bytes in mapped regions (hblkhd): 0\n" +"Max. total allocated space (usmblks): 0\n" +"Free bytes held in fastbins (fsmblks): 0\n" +"Total allocated space (uordblks): 0\n" +"Total free space (fordblks): 0\n" +"Topmost releasable block (keepcost): 0\n" msgstr "" -#. type: TH -#: build/C/man3/malloc_hook.3:6 +#. type: Plain text +#: build/C/man3/mallinfo.3:189 #, no-wrap -msgid "2010-10-13" +msgid "" +"============== After allocating blocks ==============\n" +"Total non-mmapped bytes (arena): 135168\n" +"# of free chunks (ordblks): 1\n" +"# of free fastbin blocks (smblks): 0\n" +"# of mapped regions (hblks): 0\n" +"Bytes in mapped regions (hblkhd): 0\n" +"Max. total allocated space (usmblks): 0\n" +"Free bytes held in fastbins (fsmblks): 0\n" +"Total allocated space (uordblks): 104000\n" +"Total free space (fordblks): 31168\n" +"Topmost releasable block (keepcost): 31168\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:11 +#: build/C/man3/mallinfo.3:201 +#, no-wrap msgid "" -"__malloc_hook, __malloc_initialize_hook, __memalign_hook, __free_hook, " -"__realloc_hook, __after_morecore_hook - malloc debugging variables" +"============== After freeing blocks ==============\n" +"Total non-mmapped bytes (arena): 135168\n" +"# of free chunks (ordblks): 501\n" +"# of free fastbin blocks (smblks): 0\n" +"# of mapped regions (hblks): 0\n" +"Bytes in mapped regions (hblkhd): 0\n" +"Max. total allocated space (usmblks): 0\n" +"Free bytes held in fastbins (fsmblks): 0\n" +"Total allocated space (uordblks): 52000\n" +"Total free space (fordblks): 83168\n" +"Topmost releasable block (keepcost): 31168\n" +msgstr "" + +#. type: SS +#: build/C/man3/mallinfo.3:203 build/C/man3/malloc_info.3:167 build/C/man3/mallopt.3:532 build/C/man3/mcheck.3:176 build/C/man2/mprotect.2:165 +#, no-wrap +msgid "Program source" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:14 build/C/man3/posix_memalign.3:40 +#: build/C/man3/mallinfo.3:208 #, no-wrap -msgid "B<#include Emalloc.hE>\n" +msgid "" +"#include Emalloc.hE\n" +"#include \"tlpi_hdr.h\"\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:16 +#: build/C/man3/mallinfo.3:213 #, no-wrap -msgid "BIB<, const void *>IB<);>\n" +msgid "" +"static void\n" +"display_mallinfo(void)\n" +"{\n" +" struct mallinfo mi;\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/mallinfo.3:215 +#, no-wrap +msgid " mi = mallinfo();\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:19 +#: build/C/man3/mallinfo.3:227 #, no-wrap msgid "" -"BIB<, size_t >IB<, const void " -"*>IB<);>\n" +" printf(\"Total non-mmapped bytes (arena): %d\\en\", mi.arena);\n" +" printf(\"# of free chunks (ordblks): %d\\en\", mi.ordblks);\n" +" printf(\"# of free fastbin blocks (smblks): %d\\en\", mi.smblks);\n" +" printf(\"# of mapped regions (hblks): %d\\en\", mi.hblks);\n" +" printf(\"Bytes in mapped regions (hblkhd): %d\\en\", mi.hblkhd);\n" +" printf(\"Max. total allocated space (usmblks): %d\\en\", mi.usmblks);\n" +" printf(\"Free bytes held in fastbins (fsmblks): %d\\en\", mi.fsmblks);\n" +" printf(\"Total allocated space (uordblks): %d\\en\", " +"mi.uordblks);\n" +" printf(\"Total free space (fordblks): %d\\en\", " +"mi.fordblks);\n" +" printf(\"Topmost releasable block (keepcost): %d\\en\", " +"mi.keepcost);\n" +"}\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:22 +#: build/C/man3/mallinfo.3:235 #, no-wrap msgid "" -"BIB<, size_t >IB<,>\n" -"B< const void *>IB<);>\n" +"int\n" +"main(int argc, char *argv[])\n" +"{\n" +"#define MAX_ALLOCS 2000000\n" +" char *alloc[MAX_ALLOCS];\n" +" int numBlocks, j, freeBegin, freeEnd, freeStep;\n" +" size_t blockSize;\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:24 +#: build/C/man3/mallinfo.3:239 #, no-wrap -msgid "BIB<, const void *>IB<);>\n" +msgid "" +" if (argc E 3 || strcmp(argv[1], \"--help\") == 0)\n" +" usageErr(\"%s num-blocks block-size [free-step [start-free \"\n" +" \"[end-free]]]\\en\", argv[0]);\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:26 +#: build/C/man3/mallinfo.3:245 #, no-wrap -msgid "B\n" +msgid "" +" numBlocks = atoi(argv[1]);\n" +" blockSize = atoi(argv[2]);\n" +" freeStep = (argc E 3) ? atoi(argv[3]) : 1;\n" +" freeBegin = (argc E 4) ? atoi(argv[4]) : 0;\n" +" freeEnd = (argc E 5) ? atoi(argv[5]) : numBlocks;\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:28 +#: build/C/man3/mallinfo.3:248 #, no-wrap -msgid "B\n" +msgid "" +" printf(\"============== Before allocating blocks " +"==============\\en\");\n" +" display_mallinfo();\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:39 +#: build/C/man3/mallinfo.3:252 +#, no-wrap msgid "" -"The GNU C library lets you modify the behavior of B(3), " -"B(3), and B(3) by specifying appropriate hook functions. " -"You can use these hooks to help you debug programs that use dynamic memory " -"allocation, for example." +" for (j = 0; j E numBlocks; j++) {\n" +" if (numBlocks E= MAX_ALLOCS)\n" +" fatal(\"Too many allocations\");\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:46 +#: build/C/man3/mallinfo.3:257 +#, no-wrap msgid "" -"The variable B<__malloc_initialize_hook> points at a function that is called " -"once when the malloc implementation is initialized. This is a weak " -"variable, so it can be overridden in the application with a definition like " -"the following:" +" alloc[j] = malloc(blockSize);\n" +" if (alloc[j] == NULL)\n" +" errExit(\"malloc\");\n" +" }\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:49 +#: build/C/man3/mallinfo.3:260 #, no-wrap -msgid " void (*__malloc_initialize_hook)(void) = my_init_hook;\n" +msgid "" +" printf(\"\\en============== After allocating blocks " +"==============\\en\");\n" +" display_mallinfo();\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:54 -msgid "Now the function I() can do the initialization of all hooks." +#: build/C/man3/mallinfo.3:263 +#, no-wrap +msgid "" +" for (j = freeBegin; j E freeEnd; j += freeStep)\n" +" free(alloc[j]);\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:70 +#: build/C/man3/mallinfo.3:266 +#, no-wrap msgid "" -"The four functions pointed to by B<__malloc_hook>, B<__realloc_hook>, " -"B<__memalign_hook>, B<__free_hook> have a prototype like the functions " -"B(3), B(3), B(3), B(3), respectively, " -"except that they have a final argument I that gives the address of " -"the caller of B(3), etc." +" printf(\"\\en============== After freeing blocks " +"==============\\en\");\n" +" display_mallinfo();\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:76 +#: build/C/man3/mallinfo.3:269 build/C/man3/malloc_info.3:255 build/C/man3/mallopt.3:565 build/C/man3/mcheck.3:203 build/C/man2/mmap.2:711 +#, no-wrap msgid "" -"The variable B<__after_morecore_hook> points at a function that is called " -"each time after B(2) was asked for more memory." +" exit(EXIT_SUCCESS);\n" +"}\n" msgstr "" -#. https://bugzilla.redhat.com/show_bug.cgi?id=450187 -#. http://sourceware.org/bugzilla/show_bug.cgi?id=9957 #. type: Plain text -#: build/C/man3/malloc_hook.3:85 +#: build/C/man3/mallinfo.3:279 msgid "" -"The use of these hook functions is not safe in multithreaded programs, and " -"they are now deprecated. Programmers should instead preempt calls to the " -"relevant functions by defining and exporting functions such as \"malloc\" " -"and \"free\"." +"B(2), B(3), B(3), B(3), " +"B(3), B(3)" msgstr "" -#. type: SH -#: build/C/man3/malloc_hook.3:85 build/C/man3/mallopt.3:464 build/C/man3/mcheck.3:159 build/C/man2/mmap.2:571 build/C/man2/mprotect.2:142 build/C/man3/mtrace.3:106 +#. type: TH +#: build/C/man3/malloc_get_state.3:25 #, no-wrap -msgid "EXAMPLE" +msgid "MALLOC_GET_STATE" +msgstr "" + +#. type: TH +#: build/C/man3/malloc_get_state.3:25 +#, no-wrap +msgid "2012-05-04" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_get_state.3:28 +msgid "" +"malloc_get_state, malloc_set_state - record and restore state of malloc " +"implementation" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_get_state.3:31 build/C/man3/posix_memalign.3:35 +#, no-wrap +msgid "B<#include Estdlib.hE>\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_get_state.3:33 +#, no-wrap +msgid "B\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_get_state.3:35 +#, no-wrap +msgid "BIB<);>\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_get_state.3:53 +msgid "" +"The B() function records the current state of all " +"B(3) internal bookkeeping variables (but not the actual contents of " +"the heap or the state of B(3) functions pointers). The state " +"is recorded in a system-dependent opaque data structure dynamically " +"allocated via B(3), and a pointer to that data structure is returned " +"as the function result. (It is the caller's responsibility to B(3) " +"this memory.)" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_get_state.3:61 +msgid "" +"The B() function restores the state of all B(3) " +"internal bookkeeping variables to the values recorded in the opaque data " +"structure pointed to by I." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_get_state.3:68 +msgid "" +"On success, B() returns a pointer to a newly allocated " +"opaque data structure. On error (for example, memory could not be allocated " +"for the data structure), B() returns NULL." +msgstr "" + +#. if(ms->magic != MALLOC_STATE_MAGIC) return -1; +#. /* Must fail if the major version is too high. */ +#. if((ms->version & ~0xffl) > (MALLOC_STATE_VERSION & ~0xffl)) return -2; +#. type: Plain text +#: build/C/man3/malloc_get_state.3:86 +msgid "" +"On success, B() returns 0. If the implementation detects " +"that I does not point to a correctly formed data structure, " +"B() returns -1. If the implementation detects that the " +"version of the data structure referred to by I is a more recent " +"version than this implementation knows about, B() returns " +"-2." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_get_state.3:88 build/C/man3/malloc_hook.3:82 build/C/man3/mcheck.3:147 build/C/man3/mtrace.3:80 +msgid "These functions are GNU extensions." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_get_state.3:94 +msgid "" +"These functions are especially useful when using this B(3) " +"implementation as part of a shared library, and the heap contents are " +"saved/restored via some other method. This technique is used by the GNU " +"Emacs to implement its \"dumping\" function." +msgstr "" + +#. i.e., calls __malloc_check_init() +#. i.e., malloc checking is not already in use +#. and the caller requested malloc checking +#. type: Plain text +#: build/C/man3/malloc_get_state.3:111 +msgid "" +"Hook function pointers are never saved or restored by these functions, with " +"two exceptions: if malloc checking (see B(3)) was in use when " +"B() was called, then B() resets malloc " +"checking hooks if possible; if malloc checking was not in use in the " +"recorded state, but the caller has requested malloc checking, then the hooks " +"are reset to 0." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_get_state.3:114 +msgid "B(3), B(3)" +msgstr "" + +#. type: TH +#: build/C/man3/malloc_hook.3:10 +#, no-wrap +msgid "MALLOC_HOOK" +msgstr "" + +#. type: TH +#: build/C/man3/malloc_hook.3:10 +#, no-wrap +msgid "2010-10-13" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:15 +msgid "" +"__malloc_hook, __malloc_initialize_hook, __memalign_hook, __free_hook, " +"__realloc_hook, __after_morecore_hook - malloc debugging variables" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:18 build/C/man3/malloc_info.3:31 build/C/man3/posix_memalign.3:41 +#, no-wrap +msgid "B<#include Emalloc.hE>\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:20 +#, no-wrap +msgid "BIB<, const void *>IB<);>\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:23 +#, no-wrap +msgid "" +"BIB<, size_t >IB<, const void " +"*>IB<);>\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:26 +#, no-wrap +msgid "" +"BIB<, size_t >IB<,>\n" +"B< const void *>IB<);>\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:28 +#, no-wrap +msgid "BIB<, const void *>IB<);>\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:30 +#, no-wrap +msgid "B\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:32 +#, no-wrap +msgid "B\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:43 +msgid "" +"The GNU C library lets you modify the behavior of B(3), " +"B(3), and B(3) by specifying appropriate hook functions. " +"You can use these hooks to help you debug programs that use dynamic memory " +"allocation, for example." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:50 +msgid "" +"The variable B<__malloc_initialize_hook> points at a function that is called " +"once when the malloc implementation is initialized. This is a weak " +"variable, so it can be overridden in the application with a definition like " +"the following:" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:53 +#, no-wrap +msgid " void (*__malloc_initialize_hook)(void) = my_init_hook;\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:58 +msgid "Now the function I() can do the initialization of all hooks." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:74 +msgid "" +"The four functions pointed to by B<__malloc_hook>, B<__realloc_hook>, " +"B<__memalign_hook>, B<__free_hook> have a prototype like the functions " +"B(3), B(3), B(3), B(3), respectively, " +"except that they have a final argument I that gives the address of " +"the caller of B(3), etc." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:80 +msgid "" +"The variable B<__after_morecore_hook> points at a function that is called " +"each time after B(2) was asked for more memory." +msgstr "" + +#. https://bugzilla.redhat.com/show_bug.cgi?id=450187 +#. http://sourceware.org/bugzilla/show_bug.cgi?id=9957 +#. type: Plain text +#: build/C/man3/malloc_hook.3:89 +msgid "" +"The use of these hook functions is not safe in multithreaded programs, and " +"they are now deprecated. Programmers should instead preempt calls to the " +"relevant functions by defining and exporting functions such as \"malloc\" " +"and \"free\"." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:91 +msgid "Here is a short example of how to use these variables." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:95 +#, no-wrap +msgid "" +"#include Estdio.hE\n" +"#include Emalloc.hE\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:99 +#, no-wrap +msgid "" +"/* Prototypes for our hooks. */\n" +"static void my_init_hook(void);\n" +"static void *my_malloc_hook(size_t, const void *);\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:102 +#, no-wrap +msgid "" +"/* Variables to save original hooks. */\n" +"static void *(*old_malloc_hook)(size_t, const void *);\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:105 +#, no-wrap +msgid "" +"/* Override initializing hook from the C library. */\n" +"void (*__malloc_initialize_hook) (void) = my_init_hook;\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:112 +#, no-wrap +msgid "" +"static void\n" +"my_init_hook(void)\n" +"{\n" +" old_malloc_hook = __malloc_hook;\n" +" __malloc_hook = my_malloc_hook;\n" +"}\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:117 +#, no-wrap +msgid "" +"static void *\n" +"my_malloc_hook(size_t size, const void *caller)\n" +"{\n" +" void *result;\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:120 +#, no-wrap +msgid "" +" /* Restore all old hooks */\n" +" __malloc_hook = old_malloc_hook;\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:123 +#, no-wrap +msgid "" +" /* Call recursively */\n" +" result = malloc(size);\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:126 +#, no-wrap +msgid "" +" /* Save underlying hooks */\n" +" old_malloc_hook = __malloc_hook;\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:130 +#, no-wrap +msgid "" +" /* printf() might call malloc(), so protect it too. */\n" +" printf(\"malloc(%u) called from %p returns %p\\en\",\n" +" (unsigned int) size, caller, result);\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:133 +#, no-wrap +msgid "" +" /* Restore our own hooks */\n" +" __malloc_hook = my_malloc_hook;\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:136 +#, no-wrap +msgid "" +" return result;\n" +"}\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_hook.3:142 +msgid "B(3), B(3), B(3), B(3)" +msgstr "" + +#. type: TH +#: build/C/man3/malloc_info.3:25 +#, no-wrap +msgid "MALLOC_INFO" +msgstr "" + +#. type: TH +#: build/C/man3/malloc_info.3:25 build/C/man2/shmget.2:38 +#, no-wrap +msgid "2013-04-19" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:28 +msgid "malloc_info - export malloc state to a stream" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:33 +#, no-wrap +msgid "BIB<, FILE *>IB<);>\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:44 +msgid "" +"The B() function exports an XML string that describes the " +"current state of the memory-allocation implementation in the caller. The " +"string is printed on the file stream I. The exported string includes " +"information about all arenas (see B(3))." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:48 +msgid "As currently implemented, I must be zero." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:55 +msgid "" +"On success, B() returns 0; on error, it returns -1, with " +"I set to indicate the cause." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:60 +msgid "I was nonzero." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:63 +msgid "B() was added to glibc in version 2.10." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:65 build/C/man3/malloc_stats.3:57 build/C/man3/malloc_trim.3:62 build/C/man3/malloc_usable_size.3:50 +msgid "This function is a GNU extension." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:71 +msgid "" +"The memory-allocation information is provided as an XML string (rather than " +"a C structure) because the information may change over time (according to " +"changes in the underlying implementation). The output XML string includes a " +"version field." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:77 +msgid "" +"The B(3) function can be used to send the output of " +"B() directly into a buffer in memory, rather than to a file." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:84 +msgid "" +"The B() function is designed to address deficiencies in " +"B(3) and B(3)." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:95 +msgid "" +"The program below takes up to four command-line arguments, of which the " +"first three are mandatory. The first argument specifies the number of " +"threads that the program should create. All of the threads, including the " +"main thread, allocate the number of blocks of memory specified by the second " +"argument. The third argument controls the size of the blocks to be " +"allocated. The main thread creates blocks of this size, the second thread " +"created by the program allocates blocks of twice this size, the third thread " +"allocates blocks of three times this size, and so on." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:102 +msgid "" +"The program calls B() twice to display the memory-allocation " +"state. The first call takes place before any threads are created or memory " +"allocated. The second call is performed after all threads have allocated " +"memory." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:110 +msgid "" +"In the following example, the command-line arguments specify the creation of " +"one additional thread, and both the main thread and the additional thread " +"allocate 10000 blocks of memory. After the blocks of memory have been " +"allocated, B() shows the state of two allocation arenas." +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:135 +#, no-wrap +msgid "" +"$ B\n" +"glibc 2.13\n" +"$ B<./a.out 1 10000 100>\n" +"============ Before allocating blocks ============\n" +"Emalloc version=\"1\"E\n" +"Eheap nr=\"0\"E\n" +"EsizesE\n" +"E/sizesE\n" +"Etotal type=\"fast\" count=\"0\" size=\"0\"/E\n" +"Etotal type=\"rest\" count=\"0\" size=\"0\"/E\n" +"Esystem type=\"current\" size=\"135168\"/E\n" +"Esystem type=\"max\" size=\"135168\"/E\n" +"Easpace type=\"total\" size=\"135168\"/E\n" +"Easpace type=\"mprotect\" size=\"135168\"/E\n" +"E/heapE\n" +"Etotal type=\"fast\" count=\"0\" size=\"0\"/E\n" +"Etotal type=\"rest\" count=\"0\" size=\"0\"/E\n" +"Esystem type=\"current\" size=\"135168\"/E\n" +"Esystem type=\"max\" size=\"135168\"/E\n" +"Easpace type=\"total\" size=\"135168\"/E\n" +"Easpace type=\"mprotect\" size=\"135168\"/E\n" +"E/mallocE\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:165 +#, no-wrap +msgid "" +"============ After allocating blocks ============\n" +"Emalloc version=\"1\"E\n" +"Eheap nr=\"0\"E\n" +"EsizesE\n" +"E/sizesE\n" +"Etotal type=\"fast\" count=\"0\" size=\"0\"/E\n" +"Etotal type=\"rest\" count=\"0\" size=\"0\"/E\n" +"Esystem type=\"current\" size=\"1081344\"/E\n" +"Esystem type=\"max\" size=\"1081344\"/E\n" +"Easpace type=\"total\" size=\"1081344\"/E\n" +"Easpace type=\"mprotect\" size=\"1081344\"/E\n" +"E/heapE\n" +"Eheap nr=\"1\"E\n" +"EsizesE\n" +"E/sizesE\n" +"Etotal type=\"fast\" count=\"0\" size=\"0\"/E\n" +"Etotal type=\"rest\" count=\"0\" size=\"0\"/E\n" +"Esystem type=\"current\" size=\"1032192\"/E\n" +"Esystem type=\"max\" size=\"1032192\"/E\n" +"Easpace type=\"total\" size=\"1032192\"/E\n" +"Easpace type=\"mprotect\" size=\"1032192\"/E\n" +"E/heapE\n" +"Etotal type=\"fast\" count=\"0\" size=\"0\"/E\n" +"Etotal type=\"rest\" count=\"0\" size=\"0\"/E\n" +"Esystem type=\"current\" size=\"2113536\"/E\n" +"Esystem type=\"max\" size=\"2113536\"/E\n" +"Easpace type=\"total\" size=\"2113536\"/E\n" +"Easpace type=\"mprotect\" size=\"2113536\"/E\n" +"E/mallocE\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:175 +#, no-wrap +msgid "" +"#include Eunistd.hE\n" +"#include Estdlib.hE\n" +"#include Epthread.hE\n" +"#include Emalloc.hE\n" +"#include Eerrno.hE\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:178 +#, no-wrap +msgid "" +"static size_t blockSize;\n" +"static int numThreads, numBlocks;\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:181 +#, no-wrap +msgid "" +"#define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); \\e\n" +" } while (0)\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:187 +#, no-wrap +msgid "" +"static void *\n" +"thread_func(void *arg)\n" +"{\n" +" int j;\n" +" int tn = (int) arg;\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:190 +#, no-wrap +msgid "" +" /* The multiplier \\(aq(2 + tn)\\(aq ensures that each thread " +"(including\n" +" the main thread) allocates a different amount of memory */\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:194 +#, no-wrap +msgid "" +" for (j = 0; j E numBlocks; j++)\n" +" if (malloc(blockSize * (2 + tn)) == NULL)\n" +" errExit(\"malloc-thread\");\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:198 +#, no-wrap +msgid "" +" sleep(100); /* Sleep until main thread terminates */\n" +" return NULL;\n" +"}\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:204 +#, no-wrap +msgid "" +"int\n" +"main(int argc, char *argv[])\n" +"{\n" +" int j, tn, sleepTime;\n" +" pthread_t *thr;\n" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_info.3:211 +#, no-wrap +msgid "" +" if (argc E 4) {\n" +" fprintf(stderr,\n" +" \"%s num-threads num-blocks block-size [sleep-time]\\en\",\n" +" argv[0]);\n" +" exit(EXIT_FAILURE);\n" +" }\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:87 -msgid "Here is a short example of how to use these variables." +#: build/C/man3/malloc_info.3:216 +#, no-wrap +msgid "" +" numThreads = atoi(argv[1]);\n" +" numBlocks = atoi(argv[2]);\n" +" blockSize = atoi(argv[3]);\n" +" sleepTime = (argc E 4) ? atoi(argv[4]) : 0;\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:91 +#: build/C/man3/malloc_info.3:220 #, no-wrap msgid "" -"#include Estdio.hE\n" -"#include Emalloc.hE\n" +" thr = calloc(numThreads, sizeof(pthread_t));\n" +" if (thr == NULL)\n" +" errExit(\"calloc\");\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:95 +#: build/C/man3/malloc_info.3:223 #, no-wrap msgid "" -"/* Prototypes for our hooks. */\n" -"static void my_init_hook(void);\n" -"static void *my_malloc_hook(size_t, const void *);\n" +" printf(\"============ Before allocating blocks ============\\en\");\n" +" malloc_info(0, stdout);\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:98 +#: build/C/man3/malloc_info.3:225 #, no-wrap -msgid "" -"/* Variables to save original hooks. */\n" -"static void *(*old_malloc_hook)(size_t, const void *);\n" +msgid " /* Create threads that allocate different amounts of memory */\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:101 +#: build/C/man3/malloc_info.3:231 #, no-wrap msgid "" -"/* Override initializing hook from the C library. */\n" -"void (*__malloc_initialize_hook) (void) = my_init_hook;\n" +" for (tn = 0; tn E numThreads; tn++) {\n" +" errno = pthread_create(&thr[tn], NULL, thread_func,\n" +" (void *) tn);\n" +" if (errno != 0)\n" +" errExit(\"pthread_create\");\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:108 +#: build/C/man3/malloc_info.3:236 #, no-wrap msgid "" -"static void\n" -"my_init_hook(void)\n" -"{\n" -" old_malloc_hook = __malloc_hook;\n" -" __malloc_hook = my_malloc_hook;\n" -"}\n" +" /* If we add a sleep interval after the start-up of each\n" +" thread, the threads likely won\\(aqt contend for malloc\n" +" mutexes, and therefore additional arenas won\\(aqt be\n" +" allocated (see malloc(3)). */\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:113 +#: build/C/man3/malloc_info.3:240 #, no-wrap msgid "" -"static void *\n" -"my_malloc_hook(size_t size, const void *caller)\n" -"{\n" -" void *result;\n" +" if (sleepTime E 0)\n" +" sleep(sleepTime);\n" +" }\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:116 +#: build/C/man3/malloc_info.3:242 #, no-wrap -msgid "" -" /* Restore all old hooks */\n" -" __malloc_hook = old_malloc_hook;\n" +msgid " /* The main thread also allocates some memory */\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:119 +#: build/C/man3/malloc_info.3:246 #, no-wrap msgid "" -" /* Call recursively */\n" -" result = malloc(size);\n" +" for (j = 0; j E numBlocks; j++)\n" +" if (malloc(blockSize) == NULL)\n" +" errExit(\"malloc\");\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:122 +#: build/C/man3/malloc_info.3:249 #, no-wrap msgid "" -" /* Save underlying hooks */\n" -" old_malloc_hook = __malloc_hook;\n" +" sleep(2); /* Give all threads a chance to\n" +" complete allocations */\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:126 +#: build/C/man3/malloc_info.3:252 #, no-wrap msgid "" -" /* printf() might call malloc(), so protect it too. */\n" -" printf(\"malloc(%u) called from %p returns %p\\en\",\n" -" (unsigned int) size, caller, result);\n" +" printf(\"\\en============ After allocating blocks ============\\en\");\n" +" malloc_info(0, stdout);\n" msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:129 +#: build/C/man3/malloc_info.3:262 +msgid "" +"B(3), B(3), B(3), B(3), " +"B(3)" +msgstr "" + +#. type: TH +#: build/C/man3/malloc_stats.3:26 #, no-wrap +msgid "MALLOC_STATS" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_stats.3:29 +msgid "malloc_stats - print memory allocation statistics" +msgstr "" + +#. type: Plain text +#: build/C/man3/malloc_stats.3:33 +msgid "B" +msgstr "" + +#. .SH VERSIONS +#. Available already in glibc 2.0, possibly earlier +#. type: Plain text +#: build/C/man3/malloc_stats.3:55 msgid "" -" /* Restore our own hooks */\n" -" __malloc_hook = my_malloc_hook;\n" +"The B() function prints (on standard error) statistics about " +"memory allocated by B(3) and related functions. For each arena " +"(allocation area), this function prints the total amount of memory allocated " +"and the total number of bytes consumed by in-use allocations. (These two " +"values correspond to the I and I fields retrieved by " +"B(3).) In addition, the function prints the sum of these two " +"statistics for all arenas, and the maximum number of blocks and bytes that " +"were ever simultaneously allocated using B(2)." msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:132 -#, no-wrap +#: build/C/man3/malloc_stats.3:61 msgid "" -" return result;\n" -"}\n" +"More detailed information about memory allocations in the main arena can be " +"obtained using B(3)." msgstr "" #. type: Plain text -#: build/C/man3/malloc_hook.3:138 -msgid "B(3), B(3), B(3), B(3)" +#: build/C/man3/malloc_stats.3:67 +msgid "B(2), B(3), B(3), B(3), B(3)" msgstr "" #. type: TH -#: build/C/man3/malloc_trim.3:24 +#: build/C/man3/malloc_trim.3:26 #, no-wrap msgid "MALLOC_TRIM" msgstr "" #. type: TH -#: build/C/man3/malloc_trim.3:24 build/C/man3/malloc_usable_size.3:23 +#: build/C/man3/malloc_trim.3:26 build/C/man3/malloc_usable_size.3:25 #, no-wrap msgid "2012-03-29" msgstr "" #. type: Plain text -#: build/C/man3/malloc_trim.3:27 +#: build/C/man3/malloc_trim.3:29 msgid "malloc_trim - release free memory from the top of the heap" msgstr "" #. type: Plain text -#: build/C/man3/malloc_trim.3:29 build/C/man3/malloc_usable_size.3:28 build/C/man3/mallopt.3:29 -msgid "B<#include Emalloc.hE>" -msgstr "" - -#. type: Plain text -#: build/C/man3/malloc_trim.3:31 +#: build/C/man3/malloc_trim.3:33 msgid "BIB<);>" msgstr "" #. type: Plain text -#: build/C/man3/malloc_trim.3:38 +#: build/C/man3/malloc_trim.3:40 msgid "" "The B() function attempts to release free memory at the top of " "the heap (by calling B(2) with a suitable argument)." msgstr "" #. type: Plain text -#: build/C/man3/malloc_trim.3:49 +#: build/C/man3/malloc_trim.3:51 msgid "" "The I argument specifies the amount of free space to leave untrimmed at " "the top of the heap. If this argument is 0, only the minimum amount of " @@ -1650,7 +2536,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/malloc_trim.3:54 +#: build/C/man3/malloc_trim.3:56 msgid "" "The B() function returns 1 if memory was actually released " "back to the system, or 0 if it was not possible to release any memory." @@ -1659,17 +2545,12 @@ msgstr "" #. .SH VERSIONS #. Available already in glibc 2.0, possibly earlier #. type: Plain text -#: build/C/man3/malloc_trim.3:58 +#: build/C/man3/malloc_trim.3:60 msgid "No errors are defined." msgstr "" #. type: Plain text -#: build/C/man3/malloc_trim.3:60 build/C/man3/malloc_usable_size.3:48 -msgid "This function is a GNU extension." -msgstr "" - -#. type: Plain text -#: build/C/man3/malloc_trim.3:69 +#: build/C/man3/malloc_trim.3:71 msgid "" "This function is automatically called by B(3) in certain " "circumstances; see the discussion of B and B in " @@ -1677,7 +2558,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/malloc_trim.3:72 +#: build/C/man3/malloc_trim.3:74 msgid "" "This function cannot release free memory located at places other than the " "top of the heap." @@ -1686,33 +2567,33 @@ msgstr "" #. malloc/malloc.c::mTRIm(): #. return result | (av == &main_arena ? sYSTRIm (pad, av) : 0); #. type: Plain text -#: build/C/man3/malloc_trim.3:76 -msgid "This function only releases memory in the main arena." +#: build/C/man3/malloc_trim.3:78 +msgid "This function releases only memory in the main arena." msgstr "" #. type: Plain text -#: build/C/man3/malloc_trim.3:80 +#: build/C/man3/malloc_trim.3:82 msgid "B(2), B(3), B(3)" msgstr "" #. type: TH -#: build/C/man3/malloc_usable_size.3:23 +#: build/C/man3/malloc_usable_size.3:25 #, no-wrap msgid "MALLOC_USABLE_SIZE" msgstr "" #. type: Plain text -#: build/C/man3/malloc_usable_size.3:26 +#: build/C/man3/malloc_usable_size.3:28 msgid "malloc_usable_size - obtain size of block of memory allocated from heap" msgstr "" #. type: Plain text -#: build/C/man3/malloc_usable_size.3:30 +#: build/C/man3/malloc_usable_size.3:32 msgid "BIB<);>" msgstr "" #. type: Plain text -#: build/C/man3/malloc_usable_size.3:38 +#: build/C/man3/malloc_usable_size.3:40 msgid "" "The B() function returns the number of usable bytes in " "the block pointed to by I, a pointer to a block of memory allocated by " @@ -1720,14 +2601,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/malloc_usable_size.3:46 +#: build/C/man3/malloc_usable_size.3:48 msgid "" "B() returns the number of usable bytes in the block of " "allocated memory pointed to by I. If I is NULL, 0 is returned." msgstr "" #. type: Plain text -#: build/C/man3/malloc_usable_size.3:58 +#: build/C/man3/malloc_usable_size.3:60 msgid "" "The value returned by B() may be greater than the " "requested size of the allocation because of alignment and minimum size " @@ -1738,39 +2619,39 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/malloc_usable_size.3:60 +#: build/C/man3/malloc_usable_size.3:62 msgid "The main use of this function is for debugging and introspection." msgstr "" #. type: Plain text -#: build/C/man3/malloc_usable_size.3:62 +#: build/C/man3/malloc_usable_size.3:64 msgid "B(3)" msgstr "" #. type: TH -#: build/C/man3/mallopt.3:24 +#: build/C/man3/mallopt.3:26 #, no-wrap msgid "MALLOPT" msgstr "" #. type: TH -#: build/C/man3/mallopt.3:24 build/C/man3/mcheck.3:23 build/C/man3/mtrace.3:23 +#: build/C/man3/mallopt.3:26 #, no-wrap -msgid "2012-04-18" +msgid "2012-04-30" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:27 +#: build/C/man3/mallopt.3:29 msgid "mallopt - set memory allocation parameters" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:31 +#: build/C/man3/mallopt.3:33 msgid "BIB<, int >IB<);>" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:42 +#: build/C/man3/mallopt.3:44 msgid "" "The B() function adjusts parameters that control the behavior of " "the memory-allocation functions (see B(3)). The I argument " @@ -1779,18 +2660,18 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:45 +#: build/C/man3/mallopt.3:47 msgid "The following values can be specified for I:" msgstr "" #. type: TP -#: build/C/man3/mallopt.3:45 +#: build/C/man3/mallopt.3:47 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:51 +#: build/C/man3/mallopt.3:53 msgid "" "Setting this parameter controls how glibc responds when various kinds of " "programming errors are detected (e.g., freeing the same pointer twice). The " @@ -1799,13 +2680,13 @@ msgid "" msgstr "" #. type: TP -#: build/C/man3/mallopt.3:52 +#: build/C/man3/mallopt.3:54 #, no-wrap msgid "Bit 0" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:62 +#: build/C/man3/mallopt.3:64 msgid "" "If this bit is set, then print a one-line message on I that provides " "details about the error. The message starts with the string \"***\\ glibc " @@ -1816,13 +2697,13 @@ msgid "" msgstr "" #. type: TP -#: build/C/man3/mallopt.3:62 +#: build/C/man3/mallopt.3:64 #, no-wrap msgid "Bit 1" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:77 +#: build/C/man3/mallopt.3:79 msgid "" "If this bit is set, then, after printing any error message specified by bit " "0, the program is terminated by calling B(3). In glibc versions " @@ -1833,13 +2714,13 @@ msgid "" msgstr "" #. type: TP -#: build/C/man3/mallopt.3:77 +#: build/C/man3/mallopt.3:79 #, no-wrap msgid "Bit 2 (since glibc 2.4)" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:84 +#: build/C/man3/mallopt.3:86 msgid "" "This bit has an effect only if bit 0 is also set. If this bit is set, then " "the one-line message describing the error is simplified to contain just the " @@ -1848,96 +2729,96 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:89 +#: build/C/man3/mallopt.3:91 msgid "The remaining bits in I are ignored." msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:93 +#: build/C/man3/mallopt.3:95 msgid "" "Combining the above details, the following numeric values are meaningful for " "B:" msgstr "" #. type: IP -#: build/C/man3/mallopt.3:94 +#: build/C/man3/mallopt.3:96 #, no-wrap msgid "0" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:96 +#: build/C/man3/mallopt.3:98 msgid "Ignore error conditions; continue execution (with undefined results)." msgstr "" #. type: IP -#: build/C/man3/mallopt.3:96 +#: build/C/man3/mallopt.3:98 #, no-wrap msgid "1" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:98 +#: build/C/man3/mallopt.3:100 msgid "Print a detailed error message and continue execution." msgstr "" #. type: IP -#: build/C/man3/mallopt.3:98 +#: build/C/man3/mallopt.3:100 #, no-wrap msgid "2" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:100 +#: build/C/man3/mallopt.3:102 msgid "Abort the program." msgstr "" #. type: IP -#: build/C/man3/mallopt.3:100 +#: build/C/man3/mallopt.3:102 #, no-wrap msgid "3" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:103 +#: build/C/man3/mallopt.3:105 msgid "" "Print detailed error message, stack trace, and memory mappings, and abort " "the program." msgstr "" #. type: IP -#: build/C/man3/mallopt.3:103 +#: build/C/man3/mallopt.3:105 #, no-wrap msgid "5" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:105 +#: build/C/man3/mallopt.3:107 msgid "Print a simple error message and continue execution." msgstr "" #. type: IP -#: build/C/man3/mallopt.3:105 +#: build/C/man3/mallopt.3:107 #, no-wrap msgid "7" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:108 +#: build/C/man3/mallopt.3:110 msgid "" "Print simple error message, stack trace, and memory mappings, and abort the " "program." msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:114 +#: build/C/man3/mallopt.3:116 msgid "" "Since glibc 2.3.4, the default value for the B parameter is " "3. In glibc version 2.3.3 and earlier, the default value is 1." msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:119 +#: build/C/man3/mallopt.3:121 msgid "" "Using a nonzero B value can be useful because otherwise a " "crash may happen much later, and the true cause of the problem is then very " @@ -1945,14 +2826,14 @@ msgid "" msgstr "" #. type: TP -#: build/C/man3/mallopt.3:119 +#: build/C/man3/mallopt.3:121 #, no-wrap msgid "B" msgstr "" #. The following text adapted from comments in the glibc source: #. type: Plain text -#: build/C/man3/mallopt.3:129 +#: build/C/man3/mallopt.3:131 msgid "" "This parameter specifies the maximum number of allocation requests that may " "be simultaneously serviced using B(2). This parameter exists because " @@ -1961,7 +2842,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:136 +#: build/C/man3/mallopt.3:138 msgid "" "The default value is 65,536, a value which has no special significance and " "which servers only as a safeguard. Setting this parameter to 0 disables the " @@ -1969,13 +2850,13 @@ msgid "" msgstr "" #. type: TP -#: build/C/man3/mallopt.3:136 +#: build/C/man3/mallopt.3:138 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:145 +#: build/C/man3/mallopt.3:147 msgid "" "For allocations greater than or equal to the limit specified (in bytes) by " "B that can't be satisfied from the free list, the " @@ -1984,7 +2865,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:165 +#: build/C/man3/mallopt.3:167 msgid "" "Allocating memory using B(2) has the significant advantage that the " "allocated memory blocks can always be independently released back to the " @@ -1998,7 +2879,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:172 +#: build/C/man3/mallopt.3:174 msgid "" "The lower limit for this parameter is 0. The upper limit is " "B: 512*1024 on 32-bit systems or " @@ -2006,7 +2887,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:190 +#: build/C/man3/mallopt.3:192 msgid "" "I Nowadays, glibc uses a dynamic mmap threshold by default. The " "initial value of the threshold is 128*1024, but when blocks larger than the " @@ -2020,14 +2901,14 @@ msgid "" msgstr "" #. type: TP -#: build/C/man3/mallopt.3:190 +#: build/C/man3/mallopt.3:192 #, no-wrap msgid "B (since glibc 2.3)" msgstr "" #. The following text adapted from comments in the glibc sources: #. type: Plain text -#: build/C/man3/mallopt.3:210 +#: build/C/man3/mallopt.3:212 msgid "" "Set the upper limit for memory allocation requests that are satisfied using " "\"fastbins\". (The measurement unit for this parameter is bytes.) Fastbins " @@ -2042,13 +2923,13 @@ msgid "" msgstr "" #. type: TP -#: build/C/man3/mallopt.3:210 +#: build/C/man3/mallopt.3:212 #, no-wrap msgid "B (since glibc 2.4)" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:225 +#: build/C/man3/mallopt.3:227 msgid "" "If this parameter is set to a nonzero value, then bytes of allocated memory " "(other than allocations via B(3)) are initialized to the complement " @@ -2060,13 +2941,13 @@ msgid "" msgstr "" #. type: TP -#: build/C/man3/mallopt.3:225 +#: build/C/man3/mallopt.3:227 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:232 +#: build/C/man3/mallopt.3:234 msgid "" "This parameter defines the amount of padding to employ when calling " "B(2) to modify the program break. (The measurement unit for this " @@ -2075,14 +2956,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:239 +#: build/C/man3/mallopt.3:241 msgid "" "When the program break is increased, then B bytes are added to " "the B(2) request." msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:245 +#: build/C/man3/mallopt.3:247 msgid "" "When the heap is trimmed as a consequence of calling B(3) (see the " "discussion of B) this much free space is preserved at the " @@ -2090,14 +2971,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:249 +#: build/C/man3/mallopt.3:251 msgid "" "In either case, the amount of padding is always rounded to a system page " "boundary." msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:256 +#: build/C/man3/mallopt.3:258 msgid "" "Modifying B is a trade-off between increasing the number of " "system calls (when the parameter is set low) and wasting unused memory at " @@ -2106,18 +2987,18 @@ msgstr "" #. DEFAULT_TOP_PAD in glibc source #. type: Plain text -#: build/C/man3/mallopt.3:259 +#: build/C/man3/mallopt.3:261 msgid "The default value for this parameter is 128*1024." msgstr "" #. type: TP -#: build/C/man3/mallopt.3:259 +#: build/C/man3/mallopt.3:261 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:275 +#: build/C/man3/mallopt.3:277 msgid "" "When the amount of contiguous free memory at the top of the heap grows " "sufficiently large, B(3) employs B(2) to release this memory " @@ -2128,7 +3009,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:280 +#: build/C/man3/mallopt.3:282 msgid "" "The default value for this parameter is 128*1024. Setting " "B to -1 disables trimming completely." @@ -2150,7 +3031,7 @@ msgstr "" #. These macros aren't enabled in production releases until 2.15? #. (see glibc malloc/Makefile) #. type: Plain text -#: build/C/man3/mallopt.3:303 +#: build/C/man3/mallopt.3:305 msgid "" "Modifying B is a trade-off between increasing the number " "of system calls (when the parameter is set low) and wasting unused memory " @@ -2158,13 +3039,13 @@ msgid "" msgstr "" #. type: SS -#: build/C/man3/mallopt.3:303 +#: build/C/man3/mallopt.3:305 #, no-wrap -msgid "Environment Variables" +msgid "Environment variables" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:318 +#: build/C/man3/mallopt.3:320 msgid "" "A number of environment variables can be defined to modify some of the same " "parameters as are controlled by B(). Using these variables has the " @@ -2177,14 +3058,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:321 +#: build/C/man3/mallopt.3:323 msgid "" "The environment variables are as follows (note the trailing underscore at " "the end of the name of each variable):" msgstr "" #. type: TP -#: build/C/man3/mallopt.3:321 +#: build/C/man3/mallopt.3:323 #, no-wrap msgid "B" msgstr "" @@ -2192,7 +3073,7 @@ msgstr "" #. On glibc 2.12/x86, a simple malloc()+free() loop is about 70% slower #. when MALLOC_CHECK_ was set. #. type: Plain text -#: build/C/man3/mallopt.3:338 +#: build/C/man3/mallopt.3:340 msgid "" "This environment variable controls the same parameter as B() " "B. If this variable is set to a nonzero value, then a " @@ -2204,7 +3085,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:343 +#: build/C/man3/mallopt.3:345 msgid "" "The value assigned to this environment variable should be a single digit, " "whose meaning is as described for B. Any characters beyond " @@ -2212,7 +3093,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:352 +#: build/C/man3/mallopt.3:354 msgid "" "For security reasons, the effect of B is disabled by default " "for set-user-ID and set-group-ID programs. However, if the file " @@ -2222,75 +3103,75 @@ msgid "" msgstr "" #. type: TP -#: build/C/man3/mallopt.3:352 +#: build/C/man3/mallopt.3:354 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:357 +#: build/C/man3/mallopt.3:359 msgid "Controls the same parameter as B() B." msgstr "" #. type: TP -#: build/C/man3/mallopt.3:357 +#: build/C/man3/mallopt.3:359 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:362 +#: build/C/man3/mallopt.3:364 msgid "Controls the same parameter as B() B." msgstr "" #. type: TP -#: build/C/man3/mallopt.3:362 +#: build/C/man3/mallopt.3:364 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:367 +#: build/C/man3/mallopt.3:369 msgid "Controls the same parameter as B() B." msgstr "" #. type: TP -#: build/C/man3/mallopt.3:367 +#: build/C/man3/mallopt.3:369 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:372 +#: build/C/man3/mallopt.3:374 msgid "Controls the same parameter as B() B." msgstr "" #. type: TP -#: build/C/man3/mallopt.3:372 +#: build/C/man3/mallopt.3:374 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:377 +#: build/C/man3/mallopt.3:379 msgid "Controls the same parameter as B() B." msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:382 +#: build/C/man3/mallopt.3:384 msgid "On success, B() returns 1. On error, it returns 0." msgstr "" #. .SH VERSIONS #. Available already in glibc 2.0, possibly earlier #. type: Plain text -#: build/C/man3/mallopt.3:390 +#: build/C/man3/mallopt.3:392 msgid "On error, I is I set." msgstr "" #. .SH NOTES #. type: Plain text -#: build/C/man3/mallopt.3:404 +#: build/C/man3/mallopt.3:406 msgid "" "This function is not specified by POSIX or the C standards. A similar " "function exists on many System V derivatives, but the range of values for " @@ -2300,7 +3181,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:408 +#: build/C/man3/mallopt.3:410 msgid "Specifying an invalid value for I does not generate an error." msgstr "" @@ -2310,21 +3191,21 @@ msgstr "" #. (req) + SIZE_SZ + MALLOC_ALIGN_MASK) & ~MALLOC_ALIGN_MASK #. http://sources.redhat.com/bugzilla/show_bug.cgi?id=12129 #. type: Plain text -#: build/C/man3/mallopt.3:416 +#: build/C/man3/mallopt.3:418 msgid "" "A calculation error within the glibc implementation means that a call of the " "form:" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:419 +#: build/C/man3/mallopt.3:421 #, no-wrap msgid " mallopt(M_MXFAST, n)\n" msgstr "" #. Bins are multiples of 2 * sizeof(size_t) + sizeof(size_t) #. type: Plain text -#: build/C/man3/mallopt.3:431 +#: build/C/man3/mallopt.3:433 msgid "" "does not result in fastbins being employed for all allocations of size up to " "I. To ensure desired results, I should be rounded up to the next " @@ -2337,7 +3218,7 @@ msgstr "" #. set-group-ID programs). #. http://sources.redhat.com/bugzilla/show_bug.cgi?id=12155 #. type: Plain text -#: build/C/man3/mallopt.3:443 +#: build/C/man3/mallopt.3:445 msgid "" "The B and B variables are I " "ignored in set-group-ID programs." @@ -2345,7 +3226,7 @@ msgstr "" #. FIXME http://sources.redhat.com/bugzilla/show_bug.cgi?id=12140 #. type: Plain text -#: build/C/man3/mallopt.3:464 +#: build/C/man3/mallopt.3:466 msgid "" "If B() is used to set B, then, as expected, the bytes " "of allocated memory are initialized to the complement of the byte in " @@ -2357,7 +3238,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:473 +#: build/C/man3/mallopt.3:475 msgid "" "The program below demonstrates the use of B. If the program " "is supplied with an (integer) command-line argument, then that argument is " @@ -2366,17 +3247,18 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:477 +#: build/C/man3/mallopt.3:479 msgid "" "The following shell session shows what happens when we run this program " "under glibc, with the default value for B:" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:496 +#: build/C/man3/mallopt.3:499 #, no-wrap msgid "" "$ B<./a.out>\n" +"main(): returned from first free() call\n" "*** glibc detected *** ./a.out: double free or corruption (top): 0x09d30008 " "***\n" "======= Backtrace: =========\n" @@ -2396,14 +3278,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:501 +#: build/C/man3/mallopt.3:504 msgid "" "The following runs show the results when employing other values for " "B:" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:514 +#: build/C/man3/mallopt.3:517 #, no-wrap msgid "" "$ B<./a.out 1> # Diagnose error and continue\n" @@ -2420,14 +3302,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:520 +#: build/C/man3/mallopt.3:523 msgid "" "The next run shows how to set the same parameter using the B " "environment variable:" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:527 +#: build/C/man3/mallopt.3:530 #, no-wrap msgid "" "$ B\n" @@ -2436,14 +3318,8 @@ msgid "" "main(): returned from second free() call\n" msgstr "" -#. type: SS -#: build/C/man3/mallopt.3:529 build/C/man3/mcheck.3:176 build/C/man2/mprotect.2:159 -#, no-wrap -msgid "Program source" -msgstr "" - #. type: Plain text -#: build/C/man3/mallopt.3:535 +#: build/C/man3/mallopt.3:538 #, no-wrap msgid "" "#include Emalloc.hE\n" @@ -2452,7 +3328,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:540 build/C/man3/mcheck.3:187 +#: build/C/man3/mallopt.3:543 build/C/man3/mcheck.3:187 #, no-wrap msgid "" "int\n" @@ -2462,30 +3338,19 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:547 +#: build/C/man3/mallopt.3:550 #, no-wrap msgid "" " if (argc E 1) {\n" -" if (argc != 2) {\n" -" fprintf(stderr, \"%s EM_CHECK_ACTION-valueE\\en\", " -"argv[0]);\n" +" if (mallopt(M_CHECK_ACTION, atoi(argv[1])) != 1) {\n" +" fprintf(stderr, \"mallopt() failed\");\n" " exit(EXIT_FAILURE);\n" " }\n" " }\n" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:552 -#, no-wrap -msgid "" -" if (mallopt(M_CHECK_ACTION, atoi(argv[1])) != 1) {\n" -" fprintf(stderr, \"mallopt() failed\");\n" -" exit(EXIT_FAILURE);\n" -" }\n" -msgstr "" - -#. type: Plain text -#: build/C/man3/mallopt.3:558 +#: build/C/man3/mallopt.3:556 #, no-wrap msgid "" " p = malloc(1000);\n" @@ -2496,7 +3361,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:561 +#: build/C/man3/mallopt.3:559 #, no-wrap msgid "" " free(p);\n" @@ -2504,7 +3369,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:564 +#: build/C/man3/mallopt.3:562 #, no-wrap msgid "" " free(p);\n" @@ -2512,47 +3377,46 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mallopt.3:567 build/C/man3/mcheck.3:203 build/C/man2/mmap.2:652 -#, no-wrap -msgid "" -" exit(EXIT_SUCCESS);\n" -"}\n" -msgstr "" - -#. type: Plain text #: build/C/man3/mallopt.3:580 msgid "" -"B(2) B(2), B(3), B(3), B(3), " -"B(3), B(3), B(3), B(3)" +"B(2), B(2), B(3), B(3), B(3), " +"B(3), B(3), B(3), B(3), " +"B(3), B(3)" msgstr "" #. type: TH -#: build/C/man3/mcheck.3:23 +#: build/C/man3/mcheck.3:25 #, no-wrap msgid "MCHECK" msgstr "" +#. type: TH +#: build/C/man3/mcheck.3:25 build/C/man3/mtrace.3:25 +#, no-wrap +msgid "2012-04-18" +msgstr "" + #. type: Plain text -#: build/C/man3/mcheck.3:26 +#: build/C/man3/mcheck.3:28 msgid "" "mcheck, mcheck_check_all, mcheck_pedantic, mprobe - heap consistency " "checking" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:29 +#: build/C/man3/mcheck.3:31 #, no-wrap msgid "B<#include Emcheck.hE>\n" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:31 +#: build/C/man3/mcheck.3:33 #, no-wrap msgid "BIB<)(enum mcheck_status >IB<));>\n" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:33 +#: build/C/man3/mcheck.3:35 #, no-wrap msgid "" "BIB<)(enum mcheck_status " @@ -2560,19 +3424,19 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:35 +#: build/C/man3/mcheck.3:37 #, no-wrap msgid "B\n" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:37 +#: build/C/man3/mcheck.3:39 #, no-wrap msgid "BIB<);>\n" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:50 +#: build/C/man3/mcheck.3:51 msgid "" "The B() function installs a set of debugging hooks for the " "B(3) family of memory-allocation functions. These hooks cause " @@ -2583,7 +3447,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:62 +#: build/C/man3/mcheck.3:63 msgid "" "To be effective, the B() function must be called before the first " "call to B(3) or a related function. In cases where this is " @@ -2593,7 +3457,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:70 +#: build/C/man3/mcheck.3:71 msgid "" "The B() function is similar to B(), but performs " "checks on all allocated blocks whenever one of the memory-allocation " @@ -2601,15 +3465,15 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:77 +#: build/C/man3/mcheck.3:78 msgid "" "The B() function causes an immediate check on all " -"allocated blocks. This call is only effective if B() is called " +"allocated blocks. This call is effective only if B() is called " "beforehand." msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:90 +#: build/C/man3/mcheck.3:91 msgid "" "If the system detects an inconsistency in the heap, the caller-supplied " "function pointed to by I is invoked with a single argument " @@ -2619,7 +3483,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:102 +#: build/C/man3/mcheck.3:103 msgid "" "The B() function performs a consistency check on the block of " "allocated memory pointed to by I. The B() function should be " @@ -2627,85 +3491,85 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:110 +#: build/C/man3/mcheck.3:111 msgid "" "The following list describes the values returned by B() or passed " "as the I argument when I is invoked:" msgstr "" #. type: TP -#: build/C/man3/mcheck.3:110 +#: build/C/man3/mcheck.3:111 #, no-wrap msgid "B (B() only)" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:115 +#: build/C/man3/mcheck.3:116 msgid "" "B() was not called before the first memory allocation function was " "called. Consistency checking is not possible." msgstr "" #. type: TP -#: build/C/man3/mcheck.3:115 +#: build/C/man3/mcheck.3:116 #, no-wrap msgid "B (B() only)" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:118 +#: build/C/man3/mcheck.3:119 msgid "No inconsistency detected." msgstr "" #. type: TP -#: build/C/man3/mcheck.3:118 +#: build/C/man3/mcheck.3:119 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:121 +#: build/C/man3/mcheck.3:122 msgid "Memory preceding an allocated block was clobbered." msgstr "" #. type: TP -#: build/C/man3/mcheck.3:121 +#: build/C/man3/mcheck.3:122 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:124 +#: build/C/man3/mcheck.3:125 msgid "Memory following an allocated block was clobbered." msgstr "" #. type: TP -#: build/C/man3/mcheck.3:124 +#: build/C/man3/mcheck.3:125 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:128 +#: build/C/man3/mcheck.3:129 msgid "A block of memory was freed twice." msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:133 +#: build/C/man3/mcheck.3:134 msgid "B() and B() return 0 on success, or -1 on error." msgstr "" #. type: Plain text -#: build/C/man3/mcheck.3:144 +#: build/C/man3/mcheck.3:145 msgid "" "The B() and B() functions are available " -"since glibc 2.2. The B and B functions are present " +"since glibc 2.2. The B() and B() functions are present " "since at least glibc 2.0" msgstr "" #. But is MALLOC_CHECK_ slower? #. type: Plain text -#: build/C/man3/mcheck.3:158 +#: build/C/man3/mcheck.3:159 msgid "" "Linking a program with I<-lmcheck> and using the B " "environment variable (described in B(3)) cause the same kinds of " @@ -2779,39 +3643,36 @@ msgid "" " free(p);\n" msgstr "" -#. FIXME add SEE ALSO pointer from malloc(3) to here -#. FIXME add SEE ALSO pointer from mallopt(3) to here -#. FIXME add SEE ALSO pointer from mtrace(3) to here #. type: Plain text -#: build/C/man3/mcheck.3:211 +#: build/C/man3/mcheck.3:208 msgid "B(3), B(3), B(3)" msgstr "" #. type: TH -#: build/C/man2/mlock.2:27 +#: build/C/man2/mlock.2:26 #, no-wrap msgid "MLOCK" msgstr "" #. type: TH -#: build/C/man2/mlock.2:27 +#: build/C/man2/mlock.2:26 #, no-wrap msgid "2011-09-14" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:30 +#: build/C/man2/mlock.2:29 msgid "mlock, munlock, mlockall, munlockall - lock and unlock memory" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:33 build/C/man2/mmap.2:46 build/C/man2/mmap2.2:35 build/C/man2/mprotect.2:38 build/C/man2/mremap.2:39 +#: build/C/man2/mlock.2:32 build/C/man2/mmap.2:46 build/C/man2/mmap2.2:35 build/C/man2/mprotect.2:44 build/C/man2/mremap.2:38 #, no-wrap msgid "B<#include Esys/mman.hE>\n" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:36 +#: build/C/man2/mlock.2:35 #, no-wrap msgid "" "BIB<, size_t >IB<);>\n" @@ -2819,7 +3680,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:39 +#: build/C/man2/mlock.2:38 #, no-wrap msgid "" "BIB<);>\n" @@ -2827,7 +3688,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:55 +#: build/C/man2/mlock.2:54 msgid "" "B() and B() respectively lock part or all of the calling " "process's virtual address space into RAM, preventing that memory from being " @@ -2840,13 +3701,13 @@ msgid "" msgstr "" #. type: SS -#: build/C/man2/mlock.2:55 +#: build/C/man2/mlock.2:54 #, no-wrap msgid "mlock() and munlock()" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:65 +#: build/C/man2/mlock.2:64 msgid "" "B() locks pages in the address range starting at I and " "continuing for I bytes. All pages that contain a part of the specified " @@ -2855,7 +3716,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:74 +#: build/C/man2/mlock.2:73 msgid "" "B() unlocks pages in the address range starting at I and " "continuing for I bytes. After this call, all pages that contain a part " @@ -2864,13 +3725,13 @@ msgid "" msgstr "" #. type: SS -#: build/C/man2/mlock.2:74 +#: build/C/man2/mlock.2:73 #, no-wrap msgid "mlockall() and munlockall()" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:84 +#: build/C/man2/mlock.2:83 msgid "" "B() locks all pages mapped into the address space of the calling " "process. This includes the pages of the code, data and stack segment, as " @@ -2881,33 +3742,33 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:89 +#: build/C/man2/mlock.2:88 msgid "" "The I argument is constructed as the bitwise OR of one or more of the " "following constants:" msgstr "" #. type: TP -#: build/C/man2/mlock.2:89 +#: build/C/man2/mlock.2:88 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:93 +#: build/C/man2/mlock.2:92 msgid "" "Lock all pages which are currently mapped into the address space of the " "process." msgstr "" #. type: TP -#: build/C/man2/mlock.2:93 +#: build/C/man2/mlock.2:92 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:100 +#: build/C/man2/mlock.2:99 msgid "" "Lock all pages which will become mapped into the address space of the " "process in the future. These could be for instance new pages required by a " @@ -2916,7 +3777,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:113 +#: build/C/man2/mlock.2:112 msgid "" "If B has been specified, then a later system call (e.g., " "B(2), B(2), B(3)), may fail if it would cause the number " @@ -2926,14 +3787,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:117 +#: build/C/man2/mlock.2:116 msgid "" "B() unlocks all pages mapped into the address space of the " "calling process." msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:123 +#: build/C/man2/mlock.2:122 msgid "" "On success these system calls return 0. On error, -1 is returned, I " "is set appropriately, and no changes are made to any locks in the address " @@ -2941,7 +3802,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:132 +#: build/C/man2/mlock.2:131 msgid "" "(Linux 2.6.9 and later) the caller had a nonzero B soft " "resource limit, but tried to lock more memory than the limit permitted. " @@ -2957,7 +3818,7 @@ msgstr "" #. calculates that the process is trying to lock (num_physpages / 2 + 2) #. pages, which of course is not true. (MTK, Nov 04, kernel 2.4.28) #. type: Plain text -#: build/C/man2/mlock.2:144 +#: build/C/man2/mlock.2:143 msgid "" "(Linux 2.4 and earlier) the calling process tried to lock more than half of " "RAM." @@ -2965,74 +3826,74 @@ msgstr "" #. SVr4 documents an additional EAGAIN error code. #. type: Plain text -#: build/C/man2/mlock.2:150 +#: build/C/man2/mlock.2:149 msgid "" "The caller is not privileged, but needs privilege (B) to " "perform the requested operation." msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:155 +#: build/C/man2/mlock.2:154 msgid "For B() and B():" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:158 +#: build/C/man2/mlock.2:157 msgid "Some or all of the specified address range could not be locked." msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:165 +#: build/C/man2/mlock.2:164 msgid "" "The result of the addition I+I was less than I (e.g., the " "addition may have resulted in an overflow)." msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:170 +#: build/C/man2/mlock.2:169 msgid "(Not on Linux) I was not a multiple of the page size." msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:174 +#: build/C/man2/mlock.2:173 msgid "" "Some of the specified address range does not correspond to mapped pages in " "the address space of the process." msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:177 +#: build/C/man2/mlock.2:176 msgid "For B():" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:180 +#: build/C/man2/mlock.2:179 msgid "Unknown I were specified." msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:183 +#: build/C/man2/mlock.2:182 msgid "For B():" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:187 +#: build/C/man2/mlock.2:186 msgid "(Linux 2.6.8 and earlier) The caller was not privileged (B)." msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:189 +#: build/C/man2/mlock.2:188 msgid "POSIX.1-2001, SVr4." msgstr "" #. type: SH -#: build/C/man2/mlock.2:189 build/C/man2/mmap.2:487 build/C/man2/msync.2:105 +#: build/C/man2/mlock.2:188 build/C/man2/mmap.2:501 build/C/man2/msync.2:105 #, no-wrap msgid "AVAILABILITY" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:201 +#: build/C/man2/mlock.2:200 msgid "" "On POSIX systems on which B() and B() are available, " "B<_POSIX_MEMLOCK_RANGE> is defined in Iunistd.hE> and the number " @@ -3044,7 +3905,7 @@ msgstr "" #. -1: unavailable, 0: ask using sysconf(). #. glibc defines it to 1. #. type: Plain text -#: build/C/man2/mlock.2:214 +#: build/C/man2/mlock.2:213 msgid "" "On POSIX systems on which B() and B() are available, " "B<_POSIX_MEMLOCK> is defined in Iunistd.hE> to a value greater " @@ -3052,7 +3913,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:232 +#: build/C/man2/mlock.2:231 msgid "" "Memory locking has two main applications: real-time algorithms and " "high-security data processing. Real-time applications require deterministic " @@ -3069,7 +3930,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:245 +#: build/C/man2/mlock.2:244 msgid "" "Real-time processes that are using B() to prevent delays on page " "faults should reserve enough locked stack pages before entering the " @@ -3083,7 +3944,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:251 +#: build/C/man2/mlock.2:250 msgid "" "Memory locks are not inherited by a child created via B(2) and are " "automatically removed (unlocked) during an B(2) or when the process " @@ -3091,14 +3952,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:255 +#: build/C/man2/mlock.2:254 msgid "" "The memory lock on an address range is automatically removed if the address " "range is unmapped via B(2)." msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:268 +#: build/C/man2/mlock.2:267 msgid "" "Memory locks do not stack, that is, pages which have been locked several " "times by calls to B() or B() will be unlocked by a single " @@ -3109,7 +3970,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:279 +#: build/C/man2/mlock.2:278 msgid "" "Under Linux, B() and B() automatically round I down " "to the nearest page boundary. However, POSIX.1-2001 allows an " @@ -3118,7 +3979,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:292 +#: build/C/man2/mlock.2:291 msgid "" "The I field of the Linux-specific I file shows how " "many kilobytes of memory the process with ID I has locked using " @@ -3126,13 +3987,13 @@ msgid "" msgstr "" #. type: SS -#: build/C/man2/mlock.2:292 +#: build/C/man2/mlock.2:291 #, no-wrap msgid "Limits and permissions" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:299 +#: build/C/man2/mlock.2:298 msgid "" "In Linux 2.6.8 and earlier, a process must be privileged (B) " "in order to lock memory and the B soft resource limit " @@ -3140,7 +4001,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:305 +#: build/C/man2/mlock.2:304 msgid "" "Since Linux 2.6.9, no limits are placed on the amount of memory that a " "privileged process can lock and the B soft resource limit " @@ -3148,7 +4009,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:313 +#: build/C/man2/mlock.2:312 msgid "" "In the 2.4 series Linux kernels up to and including 2.4.17, a bug caused the " "B() B flag to be inherited across a B(2). This " @@ -3160,7 +4021,7 @@ msgstr "" #. "Rationale for RLIMIT_MEMLOCK" #. 23 Jan 2006 #. type: Plain text -#: build/C/man2/mlock.2:330 +#: build/C/man2/mlock.2:329 msgid "" "Since kernel 2.6.9, if a privileged process calls I " "and later drops privileges (loses the B capability by, for " @@ -3170,7 +4031,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mlock.2:337 +#: build/C/man2/mlock.2:336 msgid "" "B(2), B(2), B(2), B(3), B(5), " "B(7)" @@ -3183,9 +4044,9 @@ msgid "MMAP" msgstr "" #. type: TH -#: build/C/man2/mmap.2:40 build/C/man2/mmap2.2:29 +#: build/C/man2/mmap.2:40 #, no-wrap -msgid "2012-04-16" +msgid "2013-04-17" msgstr "" #. type: Plain text @@ -3204,7 +4065,12 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:61 +#: build/C/man2/mmap.2:54 +msgid "See NOTES for information on feature test macro requirements." +msgstr "" + +#. type: Plain text +#: build/C/man2/mmap.2:63 msgid "" "B() creates a new mapping in the virtual address space of the calling " "process. The starting address for the new mapping is specified in I. " @@ -3214,7 +4080,7 @@ msgstr "" #. Before Linux 2.6.24, the address was rounded up to the next page #. boundary; since 2.6.24, it is rounded down! #. type: Plain text -#: build/C/man2/mmap.2:75 +#: build/C/man2/mmap.2:77 msgid "" "If I is NULL, then the kernel chooses the address at which to create " "the mapping; this is the most portable method of creating a new mapping. If " @@ -3225,7 +4091,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:87 +#: build/C/man2/mmap.2:89 msgid "" "The contents of a file mapping (as opposed to an anonymous mapping; see " "B below), are initialized using I bytes starting at " @@ -3235,7 +4101,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:95 +#: build/C/man2/mmap.2:97 msgid "" "The I argument describes the desired memory protection of the mapping " "(and must not conflict with the open mode of the file). It is either " @@ -3243,51 +4109,51 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/mmap.2:95 build/C/man2/mprotect.2:67 +#: build/C/man2/mmap.2:97 build/C/man2/mprotect.2:73 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:98 +#: build/C/man2/mmap.2:100 msgid "Pages may be executed." msgstr "" #. type: TP -#: build/C/man2/mmap.2:98 build/C/man2/mprotect.2:61 +#: build/C/man2/mmap.2:100 build/C/man2/mprotect.2:67 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:101 +#: build/C/man2/mmap.2:103 msgid "Pages may be read." msgstr "" #. type: TP -#: build/C/man2/mmap.2:101 build/C/man2/mprotect.2:64 +#: build/C/man2/mmap.2:103 build/C/man2/mprotect.2:70 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:104 +#: build/C/man2/mmap.2:106 msgid "Pages may be written." msgstr "" #. type: TP -#: build/C/man2/mmap.2:104 build/C/man2/mprotect.2:58 +#: build/C/man2/mmap.2:106 build/C/man2/mprotect.2:64 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:107 +#: build/C/man2/mmap.2:109 msgid "Pages may not be accessed." msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:116 +#: build/C/man2/mmap.2:118 msgid "" "The I argument determines whether updates to the mapping are visible " "to other processes mapping the same region, and whether updates are carried " @@ -3296,13 +4162,13 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/mmap.2:116 +#: build/C/man2/mmap.2:118 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:126 +#: build/C/man2/mmap.2:128 msgid "" "Share this mapping. Updates to the mapping are visible to other processes " "that map this file, and are carried through to the underlying file. The " @@ -3311,13 +4177,13 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/mmap.2:126 +#: build/C/man2/mmap.2:128 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:135 +#: build/C/man2/mmap.2:137 msgid "" "Create a private copy-on-write mapping. Updates to the mapping are not " "visible to other processes mapping the same file, and are not carried " @@ -3326,27 +4192,27 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:137 +#: build/C/man2/mmap.2:139 msgid "Both of these flags are described in POSIX.1-2001." msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:140 +#: build/C/man2/mmap.2:142 msgid "In addition, zero or more of the following values can be ORed in I:" msgstr "" #. type: TP -#: build/C/man2/mmap.2:140 +#: build/C/man2/mmap.2:142 #, no-wrap msgid "B (since Linux 2.4.20, 2.6)" msgstr "" #. See http://lwn.net/Articles/294642 "Tangled up in threads", 19 Aug 08 #. type: Plain text -#: build/C/man2/mmap.2:156 +#: build/C/man2/mmap.2:158 msgid "" "Put the mapping into the first 2 Gigabytes of the process address space. " -"This flag is only supported on x86-64, for 64-bit programs. It was added to " +"This flag is supported only on x86-64, for 64-bit programs. It was added to " "allow thread stacks to be allocated somewhere in the first 2GB of memory, so " "as to improve context-switch performance on some early 64-bit processors. " "Modern x86-64 processors no longer have this performance problem, so use of " @@ -3355,42 +4221,42 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/mmap.2:156 +#: build/C/man2/mmap.2:158 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:161 +#: build/C/man2/mmap.2:163 msgid "Synonym for B. Deprecated." msgstr "" #. type: TP -#: build/C/man2/mmap.2:161 +#: build/C/man2/mmap.2:163 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:183 +#: build/C/man2/mmap.2:185 msgid "" "The mapping is not backed by any file; its contents are initialized to " "zero. The I and I arguments are ignored; however, some " "implementations require I to be -1 if B (or B) " "is specified, and portable applications should ensure this. The use of " -"B in conjunction with B is only supported on " -"Linux since kernel 2.4." +"B in conjunction with B is supported on Linux " +"only since kernel 2.4." msgstr "" #. type: TP -#: build/C/man2/mmap.2:183 +#: build/C/man2/mmap.2:185 #, no-wrap msgid "B" msgstr "" #. Introduced in 1.1.36, removed in 1.3.24. #. type: Plain text -#: build/C/man2/mmap.2:191 +#: build/C/man2/mmap.2:193 msgid "" "This flag is ignored. (Long ago, it signaled that attempts to write to the " "underlying file should fail with B. But this was a source of " @@ -3398,7 +4264,7 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/mmap.2:191 +#: build/C/man2/mmap.2:193 #, no-wrap msgid "B" msgstr "" @@ -3409,12 +4275,12 @@ msgstr "" #. Linus talked about DOS related to MAP_EXECUTABLE, but he was thinking of #. MAP_DENYWRITE? #. type: Plain text -#: build/C/man2/mmap.2:199 +#: build/C/man2/mmap.2:201 msgid "This flag is ignored." msgstr "" #. type: TP -#: build/C/man2/mmap.2:199 +#: build/C/man2/mmap.2:201 #, no-wrap msgid "B" msgstr "" @@ -3422,18 +4288,18 @@ msgstr "" #. On some systems, this was required as the opposite of #. MAP_ANONYMOUS -- mtk, 1 May 2007 #. type: Plain text -#: build/C/man2/mmap.2:205 +#: build/C/man2/mmap.2:207 msgid "Compatibility flag. Ignored." msgstr "" #. type: TP -#: build/C/man2/mmap.2:205 +#: build/C/man2/mmap.2:207 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:223 +#: build/C/man2/mmap.2:225 msgid "" "Don't interpret I as a hint: place the mapping at exactly that " "address. I must be a multiple of the page size. If the memory region " @@ -3445,95 +4311,95 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/mmap.2:223 +#: build/C/man2/mmap.2:225 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:228 +#: build/C/man2/mmap.2:230 msgid "" "Used for stacks. Indicates to the kernel virtual memory system that the " "mapping should extend downward in memory." msgstr "" #. type: TP -#: build/C/man2/mmap.2:228 +#: build/C/man2/mmap.2:230 #, no-wrap msgid "B (since Linux 2.6.32)" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:234 +#: build/C/man2/mmap.2:236 msgid "" -"Allocate the mapping using \"huge pages.\" See the kernel source file " +"Allocate the mapping using \"huge pages.\" See the Linux kernel source file " "I for further information." msgstr "" #. type: TP -#: build/C/man2/mmap.2:234 +#: build/C/man2/mmap.2:236 #, no-wrap msgid "B (since Linux 2.5.37)" msgstr "" #. If set, the mapped pages will not be swapped out. #. type: Plain text -#: build/C/man2/mmap.2:240 +#: build/C/man2/mmap.2:242 msgid "" "Lock the pages of the mapped region into memory in the manner of " "B(2). This flag is ignored in older kernels." msgstr "" #. type: TP -#: build/C/man2/mmap.2:240 +#: build/C/man2/mmap.2:242 #, no-wrap msgid "B (since Linux 2.5.46)" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:255 +#: build/C/man2/mmap.2:257 msgid "" "Only meaningful in conjunction with B. Don't perform " -"read-ahead: only create page tables entries for pages that are already " +"read-ahead: create page tables entries only for pages that are already " "present in RAM. Since Linux 2.6.23, this flag causes B to do " "nothing. One day the combination of B and B may " "be reimplemented." msgstr "" #. type: TP -#: build/C/man2/mmap.2:255 +#: build/C/man2/mmap.2:257 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:270 +#: build/C/man2/mmap.2:272 msgid "" "Do not reserve swap space for this mapping. When swap space is reserved, " "one has the guarantee that it is possible to modify the mapping. When swap " "space is not reserved one might get B upon a write if no physical " "memory is available. See also the discussion of the file " "I in B(5). In kernels before 2.6, " -"this flag only had effect for private writable mappings." +"this flag had effect only for private writable mappings." msgstr "" #. type: TP -#: build/C/man2/mmap.2:270 +#: build/C/man2/mmap.2:272 #, no-wrap msgid "B (since Linux 2.5.46)" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:277 +#: build/C/man2/mmap.2:279 msgid "" "Populate (prefault) page tables for a mapping. For a file mapping, this " "causes read-ahead on the file. Later accesses to the mapping will not be " -"blocked by page faults. B is only supported for private " -"mappings since Linux 2.6.23." +"blocked by page faults. B is supported for private mappings " +"only since Linux 2.6.23." msgstr "" #. type: TP -#: build/C/man2/mmap.2:277 +#: build/C/man2/mmap.2:279 #, no-wrap msgid "B (since Linux 2.6.27)" msgstr "" @@ -3544,7 +4410,7 @@ msgstr "" #. "pthread_create() slow for many threads; also time to revisit 64b #. context switch optimization?" #. type: Plain text -#: build/C/man2/mmap.2:290 +#: build/C/man2/mmap.2:292 msgid "" "Allocate the mapping at an address suitable for a process or thread stack. " "This flag is currently a no-op, but is used in the glibc threading " @@ -3553,16 +4419,16 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/mmap.2:290 +#: build/C/man2/mmap.2:292 #, no-wrap msgid "B (since Linux 2.6.33)" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:300 +#: build/C/man2/mmap.2:302 msgid "" "Don't clear anonymous pages. This flag is intended to improve performance " -"on embedded devices. This flag is only honored if the kernel was configured " +"on embedded devices. This flag is honored only if the kernel was configured " "with the B option. Because of the security " "implications, that option is normally enabled only on embedded devices " "(i.e., devices where one has complete control of the contents of user " @@ -3570,7 +4436,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:308 +#: build/C/man2/mmap.2:310 msgid "" "Of the above flags, only B is specified in POSIX.1-2001. " "However, most systems also support B (or its synonym " @@ -3578,21 +4444,21 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:315 +#: build/C/man2/mmap.2:317 msgid "" "Some systems document the additional flags B, " "B, B, and B." msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:321 +#: build/C/man2/mmap.2:323 msgid "" "Memory mapped by B() is preserved across B(2), with the same " "attributes." msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:329 +#: build/C/man2/mmap.2:331 msgid "" "A file is mapped in multiples of the page size. For a file that is not a " "multiple of the page size, the remaining memory is zeroed when mapped, and " @@ -3602,13 +4468,13 @@ msgid "" msgstr "" #. type: SS -#: build/C/man2/mmap.2:329 +#: build/C/man2/mmap.2:331 #, no-wrap msgid "munmap()" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:339 +#: build/C/man2/mmap.2:341 msgid "" "The B() system call deletes the mappings for the specified address " "range, and causes further references to addresses within the range to " @@ -3618,7 +4484,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:349 +#: build/C/man2/mmap.2:351 msgid "" "The address I must be a multiple of the page size. All pages " "containing a part of the indicated range are unmapped, and subsequent " @@ -3627,13 +4493,13 @@ msgid "" msgstr "" #. type: SS -#: build/C/man2/mmap.2:349 +#: build/C/man2/mmap.2:351 #, no-wrap msgid "Timestamps changes for file-backed mappings" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:356 +#: build/C/man2/mmap.2:358 msgid "" "For file-backed mappings, the I field for the mapped file may be " "updated at any time between the B() and the corresponding unmapping; " @@ -3642,7 +4508,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:373 +#: build/C/man2/mmap.2:375 msgid "" "The I and I field for a file mapped with B " "and B will be updated after a write to the mapped region, and " @@ -3651,7 +4517,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:390 +#: build/C/man2/mmap.2:392 msgid "" "On success, B() returns a pointer to the mapped area. On error, the " "value B (that is, I<(void\\ *)\\ -1>) is returned, and I " @@ -3660,13 +4526,13 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/mmap.2:391 build/C/man2/mprotect.2:80 build/C/man3/shm_open.3:185 build/C/man3/shm_open.3:190 build/C/man2/shmctl.2:295 build/C/man2/shmget.2:186 build/C/man2/shmop.2:189 +#: build/C/man2/mmap.2:393 build/C/man2/mprotect.2:86 build/C/man3/shm_open.3:187 build/C/man3/shm_open.3:192 build/C/man2/shmctl.2:302 build/C/man2/shmget.2:189 build/C/man2/shmop.2:191 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:411 +#: build/C/man2/mmap.2:413 msgid "" "A file descriptor refers to a non-regular file. Or B was " "requested, but I is not open for reading. Or B was " @@ -3675,57 +4541,57 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:415 +#: build/C/man2/mmap.2:417 msgid "" "The file has been locked, or too much memory has been locked (see " "B(2))." msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:421 +#: build/C/man2/mmap.2:423 msgid "I is not a valid file descriptor (and B was not set)." msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:429 +#: build/C/man2/mmap.2:431 msgid "" "We don't like I, I, or I (e.g., they are too large, or " "not aligned on a page boundary)." msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:434 +#: build/C/man2/mmap.2:436 msgid "(since Linux 2.6.12) I was 0." msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:442 +#: build/C/man2/mmap.2:444 msgid "" "I contained neither B or B, or contained " "both of these values." msgstr "" #. type: TP -#: build/C/man2/mmap.2:442 build/C/man3/shm_open.3:227 build/C/man2/shmget.2:202 +#: build/C/man2/mmap.2:444 build/C/man3/shm_open.3:229 build/C/man2/shmget.2:205 #, no-wrap msgid "B" msgstr "" #. [2.6.7] shmem_zero_setup()-->shmem_file_setup()-->get_empty_filp() #. type: Plain text -#: build/C/man2/mmap.2:450 build/C/man2/shmget.2:206 +#: build/C/man2/mmap.2:452 build/C/man2/shmget.2:209 msgid "The system limit on the total number of open files has been reached." msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:454 +#: build/C/man2/mmap.2:456 msgid "" -"The underlying file system of the specified file does not support memory " +"The underlying filesystem of the specified file does not support memory " "mapping." msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:458 +#: build/C/man2/mmap.2:460 msgid "" "No memory is available, or the process's maximum number of mappings would " "have been exceeded." @@ -3733,49 +4599,63 @@ msgstr "" #. (Since 2.4.25 / 2.6.0.) #. type: Plain text -#: build/C/man2/mmap.2:467 +#: build/C/man2/mmap.2:469 msgid "" "The I argument asks for B but the mapped area belongs to a " -"file on a file system that was mounted no-exec." +"file on a filesystem that was mounted no-exec." msgstr "" #. type: TP -#: build/C/man2/mmap.2:467 +#: build/C/man2/mmap.2:469 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:473 +#: build/C/man2/mmap.2:475 msgid "" "B was set but the object specified by I is open for " "writing." msgstr "" +#. type: TP +#: build/C/man2/mmap.2:475 build/C/man2/shmctl.2:344 +#, no-wrap +msgid "B" +msgstr "" + #. type: Plain text -#: build/C/man2/mmap.2:475 +#: build/C/man2/mmap.2:487 +msgid "" +"On 32-bit architecture together with the large file extension (i.e., using " +"64-bit I): the number of pages used for I plus number of " +"pages used for I would overflow I (32 bits)." +msgstr "" + +#. type: Plain text +#: build/C/man2/mmap.2:489 msgid "Use of a mapped region can result in these signals:" msgstr "" #. type: TP -#: build/C/man2/mmap.2:475 +#: build/C/man2/mmap.2:489 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:478 +#: build/C/man2/mmap.2:492 msgid "Attempted write into a region mapped as read-only." msgstr "" #. type: TP -#: build/C/man2/mmap.2:478 +#: build/C/man2/mmap.2:492 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:483 +#: build/C/man2/mmap.2:497 msgid "" "Attempted access to a portion of the buffer that does not correspond to the " "file (for example, beyond the end of the file, including the case where " @@ -3785,7 +4665,7 @@ msgstr "" #. SVr4 documents additional error codes ENXIO and ENODEV. #. SUSv2 documents additional error codes EMFILE and EOVERFLOW. #. type: Plain text -#: build/C/man2/mmap.2:487 +#: build/C/man2/mmap.2:501 msgid "SVr4, 4.4BSD, POSIX.1-2001." msgstr "" @@ -3793,7 +4673,7 @@ msgstr "" #. -1: unavailable, 0: ask using sysconf(). #. glibc defines it to 1. #. type: Plain text -#: build/C/man2/mmap.2:501 +#: build/C/man2/mmap.2:515 msgid "" "On POSIX systems on which B(), B(2) and B() are " "available, B<_POSIX_MAPPED_FILES> is defined in Iunistd.hE> to a " @@ -3802,7 +4682,7 @@ msgstr "" #. Since around glibc 2.1/2.2, depending on the platform. #. type: Plain text -#: build/C/man2/mmap.2:516 +#: build/C/man2/mmap.2:530 msgid "" "This page describes the interface provided by the glibc B() wrapper " "function. Originally, this function invoked a system call of the same " @@ -3812,7 +4692,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:529 +#: build/C/man2/mmap.2:543 msgid "" "On some hardware architectures (e.g., i386), B implies " "B. It is architecture dependent whether B implies " @@ -3821,7 +4701,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:544 +#: build/C/man2/mmap.2:558 msgid "" "The portable way to create a mapping is to specify I as 0 (NULL), and " "omit B from I. In this case, the system chooses the " @@ -3832,7 +4712,20 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:549 +#: build/C/man2/mmap.2:587 +msgid "" +"Certain I constants are defined only if either B<_BSD_SOURCE> or " +"B<_SVID_SOURCE> is defined. (Requiring B<_GNU_SOURCE> also suffices, and " +"requiring that macro specifically would have been more logical, since these " +"flags are all Linux specific.) The relevant flags are: B, " +"B (and the synonym B), B, " +"B, B, B, B, " +"B, B, B, B, and " +"B." +msgstr "" + +#. type: Plain text +#: build/C/man2/mmap.2:592 msgid "" "On Linux there are no guarantees like those suggested above under " "B. By default, any process can be killed at any moment when " @@ -3840,14 +4733,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:556 +#: build/C/man2/mmap.2:599 msgid "" -"In kernels before 2.6.7, the B flag only has effect if I " +"In kernels before 2.6.7, the B flag has effect only if I " "is specified as B." msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:571 +#: build/C/man2/mmap.2:614 msgid "" "SUSv3 specifies that B() should fail if I is 0. However, in " "kernels before 2.6.12, B() succeeded in this case: no mapping was " @@ -3856,7 +4749,21 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:583 +#: build/C/man2/mmap.2:630 +msgid "" +"POSIX specifies that the system shall always zero fill any partial page at " +"the end of the object and that system will never write any modification of " +"the object beyond its end. On Linux, when you write data to such partial " +"page after the end of the object, the data stays in the page cache even " +"after the file is closed and unmapped and even though the data is never " +"written to the file itself, subsequent mappings may see the modified " +"content. In some cases, this could be fixed by calling B(2) before " +"the unmap takes place; however, this doesn't work on tmpfs (for example, " +"when using POSIX shared memory interface documented in B(7))." +msgstr "" + +#. type: Plain text +#: build/C/man2/mmap.2:642 msgid "" "The following program prints part of the file specified in its first " "command-line argument to standard output. The range of bytes to be printed " @@ -3867,7 +4774,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:591 +#: build/C/man2/mmap.2:650 #, no-wrap msgid "" "#include Esys/mman.hE\n" @@ -3879,7 +4786,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:594 build/C/man2/mprotect.2:172 +#: build/C/man2/mmap.2:653 build/C/man2/mprotect.2:178 #, no-wrap msgid "" "#define handle_error(msg) \\e\n" @@ -3887,7 +4794,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:604 +#: build/C/man2/mmap.2:663 #, no-wrap msgid "" "int\n" @@ -3902,7 +4809,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:609 +#: build/C/man2/mmap.2:668 #, no-wrap msgid "" " if (argc E 3 || argc E 4) {\n" @@ -3912,7 +4819,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:613 +#: build/C/man2/mmap.2:672 #, no-wrap msgid "" " fd = open(argv[1], O_RDONLY);\n" @@ -3921,7 +4828,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:616 +#: build/C/man2/mmap.2:675 #, no-wrap msgid "" " if (fstat(fd, &sb) == -1) /* To obtain file size */\n" @@ -3929,7 +4836,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:620 +#: build/C/man2/mmap.2:679 #, no-wrap msgid "" " offset = atoi(argv[2]);\n" @@ -3938,7 +4845,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:625 +#: build/C/man2/mmap.2:684 #, no-wrap msgid "" " if (offset E= sb.st_size) {\n" @@ -3948,7 +4855,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:631 +#: build/C/man2/mmap.2:690 #, no-wrap msgid "" " if (argc == 4) {\n" @@ -3959,7 +4866,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:635 +#: build/C/man2/mmap.2:694 #, no-wrap msgid "" " } else { /* No length arg ==E display to end of file */\n" @@ -3968,7 +4875,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:640 +#: build/C/man2/mmap.2:699 #, no-wrap msgid "" " addr = mmap(NULL, length + offset - pa_offset, PROT_READ,\n" @@ -3978,7 +4885,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:645 +#: build/C/man2/mmap.2:704 #, no-wrap msgid "" " s = write(STDOUT_FILENO, addr + offset - pa_offset, length);\n" @@ -3988,7 +4895,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:649 +#: build/C/man2/mmap.2:708 #, no-wrap msgid "" " fprintf(stderr, \"partial write\");\n" @@ -3997,7 +4904,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:666 +#: build/C/man2/mmap.2:725 msgid "" "B(2), B(2), B(2), B(2), B(2), " "B(2), B(2), B(2), B(2), " @@ -4005,7 +4912,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mmap.2:671 build/C/man2/msync.2:122 +#: build/C/man2/mmap.2:732 +msgid "" +"The descriptions of the following files in B(5): I, " +"I, and I." +msgstr "" + +#. type: Plain text +#: build/C/man2/mmap.2:737 build/C/man2/msync.2:124 msgid "B.O. Gallmeister, POSIX.4, O'Reilly, pp. 128-129 and 389-391." msgstr "" @@ -4015,6 +4929,12 @@ msgstr "" msgid "MMAP2" msgstr "" +#. type: TH +#: build/C/man2/mmap2.2:29 +#, no-wrap +msgid "2012-04-16" +msgstr "" + #. type: Plain text #: build/C/man2/mmap2.2:32 msgid "mmap2 - map files or devices into memory" @@ -4031,8 +4951,8 @@ msgstr "" #. type: Plain text #: build/C/man2/mmap2.2:43 msgid "" -"This is probably not the system call you are interested; instead, see " -"B(2), which describes the glibc wrapper function that invokes this " +"This is probably not the system call that you are interested in; instead, " +"see B(2), which describes the glibc wrapper function that invokes this " "system call." msgstr "" @@ -4055,14 +4975,14 @@ msgstr "" #. type: Plain text #: build/C/man2/mmap2.2:65 -msgid "Problem with getting the data from userspace." +msgid "Problem with getting the data from user space." msgstr "" #. type: Plain text #: build/C/man2/mmap2.2:70 msgid "" -"(Various platforms where the page size is not 4096 bytes.) I " -"is not a multiple of the system page size." +"(Various platforms where the page size is not 4096 bytes.) I is not a multiple of the system page size." msgstr "" #. type: Plain text @@ -4076,7 +4996,7 @@ msgid "B() is available since Linux 2.3.31." msgstr "" #. type: Plain text -#: build/C/man2/mmap2.2:79 build/C/man2/subpage_prot.2:93 +#: build/C/man2/mmap2.2:79 build/C/man2/subpage_prot.2:98 msgid "This system call is Linux-specific." msgstr "" @@ -4103,30 +5023,30 @@ msgid "B(2), B(2), B(2), B(2), B(3)" msgstr "" #. type: TH -#: build/C/man2/mprotect.2:32 +#: build/C/man2/mprotect.2:38 #, no-wrap msgid "MPROTECT" msgstr "" #. type: TH -#: build/C/man2/mprotect.2:32 +#: build/C/man2/mprotect.2:38 #, no-wrap -msgid "2011-09-08" +msgid "2012-08-14" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:35 +#: build/C/man2/mprotect.2:41 msgid "mprotect - set protection on a region of memory" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:40 +#: build/C/man2/mprotect.2:46 #, no-wrap -msgid "BIB<, size_t >IB<, int >IB<);>\n" +msgid "BIB<, size_t >IB<, int >IB<);>\n" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:48 +#: build/C/man2/mprotect.2:54 msgid "" "B() changes protection for the calling process's memory page(s) " "containing any part of the address range in the interval [I,\\ " @@ -4134,50 +5054,50 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:53 +#: build/C/man2/mprotect.2:59 msgid "" "If the calling process tries to access memory in a manner that violates the " "protection, then the kernel generates a B signal for the process." msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:58 +#: build/C/man2/mprotect.2:64 msgid "" "I is either B or a bitwise-or of the other values in the " "following list:" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:61 +#: build/C/man2/mprotect.2:67 msgid "The memory cannot be accessed at all." msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:64 +#: build/C/man2/mprotect.2:70 msgid "The memory can be read." msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:67 +#: build/C/man2/mprotect.2:73 msgid "The memory can be modified." msgstr "" #. FIXME #. Document PROT_GROWSUP and PROT_GROWSDOWN #. type: Plain text -#: build/C/man2/mprotect.2:72 +#: build/C/man2/mprotect.2:78 msgid "The memory can be executed." msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:79 +#: build/C/man2/mprotect.2:85 msgid "" "On success, B() returns zero. On error, -1 is returned, and " "I is set appropriately." msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:89 +#: build/C/man2/mprotect.2:95 msgid "" "The memory cannot be given the specified access. This can happen, for " "example, if you B(2) a file to which you have read-only access, then " @@ -4186,17 +5106,17 @@ msgstr "" #. Or: both PROT_GROWSUP and PROT_GROWSDOWN were specified in 'prot'. #. type: Plain text -#: build/C/man2/mprotect.2:94 +#: build/C/man2/mprotect.2:100 msgid "I is not a valid pointer, or not a multiple of the system page size." msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:97 +#: build/C/man2/mprotect.2:103 msgid "Internal kernel structures could not be allocated." msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:107 +#: build/C/man2/mprotect.2:113 msgid "" "Addresses in the range [I, I+I-1] are invalid for the " "address space of the process, or specify one or more pages that are not " @@ -4207,7 +5127,7 @@ msgstr "" #. SVr4 defines an additional error #. code EAGAIN. The SVr4 error conditions don't map neatly onto Linux's. #. type: Plain text -#: build/C/man2/mprotect.2:116 +#: build/C/man2/mprotect.2:122 msgid "" "SVr4, POSIX.1-2001. POSIX says that the behavior of B() is " "unspecified if it is applied to a region of memory that was not obtained via " @@ -4215,7 +5135,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:123 +#: build/C/man2/mprotect.2:129 msgid "" "On Linux it is always permissible to call B() on any address in a " "process's address space (except for the kernel vsyscall area). In " @@ -4223,7 +5143,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:133 +#: build/C/man2/mprotect.2:139 msgid "" "Whether B has any effect different from B is " "architecture- and kernel version-dependent. On some hardware architectures " @@ -4231,16 +5151,16 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:142 +#: build/C/man2/mprotect.2:148 msgid "" "POSIX.1-2001 says that an implementation may permit access other than that " -"specified in I, but at a minimum can only allow write access if " +"specified in I, but at a minimum can allow write access only if " "B has been set, and must not allow any access if B " "has been set." msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:148 +#: build/C/man2/mprotect.2:154 msgid "" "The program below allocates four pages of memory, makes the third of these " "pages read-only, and then executes a loop that walks upward through the " @@ -4248,12 +5168,12 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:151 +#: build/C/man2/mprotect.2:157 msgid "An example of what we might see when running the program is the following:" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:157 +#: build/C/man2/mprotect.2:163 #, no-wrap msgid "" "$B< ./a.out>\n" @@ -4262,7 +5182,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:169 +#: build/C/man2/mprotect.2:175 #, no-wrap msgid "" "#include Eunistd.hE\n" @@ -4275,13 +5195,13 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:174 +#: build/C/man2/mprotect.2:180 #, no-wrap msgid "char *buffer;\n" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:182 +#: build/C/man2/mprotect.2:188 #, no-wrap msgid "" "static void\n" @@ -4294,7 +5214,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:189 +#: build/C/man2/mprotect.2:195 #, no-wrap msgid "" "int\n" @@ -4306,7 +5226,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:195 +#: build/C/man2/mprotect.2:201 #, no-wrap msgid "" " sa.sa_flags = SA_SIGINFO;\n" @@ -4317,7 +5237,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:199 +#: build/C/man2/mprotect.2:205 #, no-wrap msgid "" " pagesize = sysconf(_SC_PAGE_SIZE);\n" @@ -4326,7 +5246,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:202 +#: build/C/man2/mprotect.2:208 #, no-wrap msgid "" " /* Allocate a buffer aligned on a page boundary;\n" @@ -4334,7 +5254,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:206 +#: build/C/man2/mprotect.2:212 #, no-wrap msgid "" " buffer = memalign(pagesize, 4 * pagesize);\n" @@ -4343,13 +5263,13 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:208 +#: build/C/man2/mprotect.2:214 #, no-wrap msgid " printf(\"Start of region: 0x%lx\\en\", (long) buffer);\n" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:212 +#: build/C/man2/mprotect.2:218 #, no-wrap msgid "" " if (mprotect(buffer + pagesize * 2, pagesize,\n" @@ -4358,7 +5278,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:215 +#: build/C/man2/mprotect.2:221 #, no-wrap msgid "" " for (p = buffer ; ; )\n" @@ -4366,7 +5286,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:219 +#: build/C/man2/mprotect.2:225 #, no-wrap msgid "" " printf(\"Loop completed\\en\"); /* Should never happen */\n" @@ -4375,35 +5295,35 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mprotect.2:223 +#: build/C/man2/mprotect.2:229 msgid "B(2), B(3)" msgstr "" #. type: TH -#: build/C/man2/mremap.2:31 +#: build/C/man2/mremap.2:30 #, no-wrap msgid "MREMAP" msgstr "" #. type: TH -#: build/C/man2/mremap.2:31 +#: build/C/man2/mremap.2:30 #, no-wrap msgid "2010-06-10" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:34 +#: build/C/man2/mremap.2:33 msgid "mremap - remap a virtual memory address" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:37 +#: build/C/man2/mremap.2:36 #, no-wrap msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:42 +#: build/C/man2/mremap.2:41 #, no-wrap msgid "" "BIB<, size_t >IB<,>\n" @@ -4412,7 +5332,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:48 +#: build/C/man2/mremap.2:47 msgid "" "B() expands (or shrinks) an existing memory mapping, potentially " "moving it at the same time (controlled by the I argument and the " @@ -4420,7 +5340,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:62 +#: build/C/man2/mremap.2:61 msgid "" "I is the old address of the virtual memory block that you want " "to expand (or shrink). Note that I has to be page aligned. " @@ -4431,7 +5351,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:74 +#: build/C/man2/mremap.2:73 msgid "" "In Linux the memory is divided into pages. A user process has (one or) " "several linear virtual memory segments. Each virtual memory segment has one " @@ -4443,7 +5363,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:82 +#: build/C/man2/mremap.2:81 msgid "" "B() uses the Linux page table scheme. B() changes the " "mapping between virtual addresses and memory pages. This can be used to " @@ -4451,18 +5371,18 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:84 +#: build/C/man2/mremap.2:83 msgid "The I bit-mask argument may be 0, or include the following flag:" msgstr "" #. type: TP -#: build/C/man2/mremap.2:84 +#: build/C/man2/mremap.2:83 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:96 +#: build/C/man2/mremap.2:95 msgid "" "By default, if there is not sufficient space to expand a mapping at its " "current location, then B() fails. If this flag is specified, then " @@ -4473,24 +5393,24 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/mremap.2:96 +#: build/C/man2/mremap.2:95 #, no-wrap msgid "B (since Linux 2.3.31)" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:118 +#: build/C/man2/mremap.2:117 msgid "" "This flag serves a similar purpose to the B flag of B(2). " "If this flag is specified, then B() accepts a fifth argument, " -"I, which specifies a page-aligned address to which the " +"I, which specifies a page-aligned address to which the " "mapping must be moved. Any previous mapping at the address range specified " "by I and I is unmapped. If B is " "specified, then B must also be specified." msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:128 +#: build/C/man2/mremap.2:127 msgid "" "If the memory segment specified by I and I is locked " "(using B(2) or similar), then this lock is maintained when the " @@ -4499,7 +5419,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:136 +#: build/C/man2/mremap.2:135 msgid "" "On success B() returns a pointer to the new virtual memory area. " "On error, the value B (that is, I<(void\\ *)\\ -1>) is returned, " @@ -4507,14 +5427,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:143 +#: build/C/man2/mremap.2:142 msgid "" "The caller tried to expand a memory segment that is locked, but this was not " "possible without exceeding the B resource limit." msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:152 +#: build/C/man2/mremap.2:151 msgid "" "\"Segmentation fault.\" Some address in the range I to " "I+I is an invalid virtual memory address for this " @@ -4524,7 +5444,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:180 +#: build/C/man2/mremap.2:179 msgid "" "An invalid argument was given. Possible causes are: I was not " "page aligned; a value other than B or B was " @@ -4536,7 +5456,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:186 +#: build/C/man2/mremap.2:185 msgid "" "The memory area cannot be expanded at the current virtual address, and the " "B flag is not set in I. Or, there is not enough " @@ -4547,14 +5467,14 @@ msgstr "" #. .BR mremap (2) #. call with completely different semantics. #. type: Plain text -#: build/C/man2/mremap.2:192 +#: build/C/man2/mremap.2:191 msgid "" "This call is Linux-specific, and should not be used in programs intended to " "be portable." msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:200 +#: build/C/man2/mremap.2:199 msgid "" "Prior to version 2.4, glibc did not expose the definition of " "B, and the prototype for B() did not allow for the " @@ -4562,7 +5482,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/mremap.2:209 +#: build/C/man2/mremap.2:208 msgid "" "B(2), B(2), B(2), B(2), B(2), " "B(2), B(3), B(3)" @@ -4571,9 +5491,10 @@ msgstr "" #. type: Plain text #: build/C/man2/mremap.2:214 msgid "" -"Your favorite OS text book for more information on paged memory. (I by Andrew S. Tanenbaum, I by Randolf " -"Bentson, I by Maurice J. Bach.)" +"Your favorite text book on operating systems for more information on paged " +"memory (e.g., I by Andrew S. Tanenbaum, I by Randolf Bentson, I by " +"Maurice J. Bach)" msgstr "" #. type: TH @@ -4583,7 +5504,7 @@ msgid "MSYNC" msgstr "" #. type: TH -#: build/C/man2/msync.2:25 build/C/man2/remap_file_pages.2:26 +#: build/C/man2/msync.2:25 build/C/man2/remap_file_pages.2:28 #, no-wrap msgid "2008-04-22" msgstr "" @@ -4653,7 +5574,7 @@ msgid "The indicated memory (or part of it) was not mapped." msgstr "" #. type: Plain text -#: build/C/man2/msync.2:98 build/C/man3/posix_fallocate.3:103 build/C/man3/shm_open.3:251 build/C/man7/shm_overview.7:103 +#: build/C/man2/msync.2:98 build/C/man3/posix_fallocate.3:105 build/C/man3/shm_open.3:253 build/C/man7/shm_overview.7:103 msgid "POSIX.1-2001." msgstr "" @@ -4668,7 +5589,7 @@ msgstr "" #. -1: unavailable, 0: ask using sysconf(). #. glibc defines them to 1. #. type: Plain text -#: build/C/man2/msync.2:118 +#: build/C/man2/msync.2:120 msgid "" "On POSIX systems on which B() is available, both " "B<_POSIX_MAPPED_FILES> and B<_POSIX_SYNCHRONIZED_IO> are defined in " @@ -4676,39 +5597,39 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/msync.2:120 build/C/man7/shm_overview.7:46 +#: build/C/man2/msync.2:122 build/C/man7/shm_overview.7:46 #, no-wrap msgid "B(2)" msgstr "" #. type: TH -#: build/C/man3/mtrace.3:23 +#: build/C/man3/mtrace.3:25 #, no-wrap msgid "MTRACE" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:26 +#: build/C/man3/mtrace.3:28 msgid "mtrace, muntrace - malloc tracing" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:28 +#: build/C/man3/mtrace.3:30 msgid "B<#include Emcheck.hE>" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:30 +#: build/C/man3/mtrace.3:32 msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:32 +#: build/C/man3/mtrace.3:34 msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:44 +#: build/C/man3/mtrace.3:46 msgid "" "The B() function installs hook functions for the memory-allocation " "functions (B(3), B(3) B(3), B(3)). These " @@ -4718,7 +5639,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:55 +#: build/C/man3/mtrace.3:57 msgid "" "The B() function disables the hook functions installed by " "B(), so that tracing information is no longer recorded for the " @@ -4727,16 +5648,16 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:63 +#: build/C/man3/mtrace.3:65 msgid "" -"When B(3) is called, it checks the value of the environment " -"variable B, which should contain the pathname of a file in " -"which the tracing information is to be recorded. If the pathname is " -"successfully opened, it is truncated to zero length." +"When B() is called, it checks the value of the environment variable " +"B, which should contain the pathname of a file in which the " +"tracing information is to be recorded. If the pathname is successfully " +"opened, it is truncated to zero length." msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:76 +#: build/C/man3/mtrace.3:78 msgid "" "If B is not set, or the pathname it specifies is invalid or " "not writable, then no hook functions are installed, and B() has no " @@ -4745,14 +5666,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:84 +#: build/C/man3/mtrace.3:86 msgid "" "In normal usage, B() is called once at the start of execution of a " "program, and B() is never called." msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:94 +#: build/C/man3/mtrace.3:96 msgid "" "The tracing output produced after a call to B() is textual, but not " "designed to be human readable. The GNU C library provides a Perl script, " @@ -4763,14 +5684,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:100 +#: build/C/man3/mtrace.3:102 msgid "" "The tracing performed by B() incurs a performance penalty (if " "B points to a valid, writable pathname)." msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:106 +#: build/C/man3/mtrace.3:108 msgid "" "The line-number information produced by B(1) is not always precise: " "the line number references may refer to the previous or following " @@ -4778,7 +5699,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:113 +#: build/C/man3/mtrace.3:115 msgid "" "The shell session below demonstrates the use of the B() function " "and the B(1) command in a program that has memory leaks at two " @@ -4786,7 +5707,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:120 +#: build/C/man3/mtrace.3:122 #, no-wrap msgid "" "$ B\n" @@ -4796,7 +5717,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:125 +#: build/C/man3/mtrace.3:127 #, no-wrap msgid "" "int\n" @@ -4806,13 +5727,13 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:127 +#: build/C/man3/mtrace.3:129 #, no-wrap msgid " mtrace();\n" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:130 +#: build/C/man3/mtrace.3:132 #, no-wrap msgid "" " for (j = 0; j E 2; j++)\n" @@ -4820,7 +5741,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:134 +#: build/C/man3/mtrace.3:136 #, no-wrap msgid "" " calloc(16, 16); /* Never freed--a memory leak */\n" @@ -4829,14 +5750,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:140 +#: build/C/man3/mtrace.3:142 msgid "" "When we run the program as follows, we see that B() diagnosed " "memory leaks at two different locations in the program:" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:153 +#: build/C/man3/mtrace.3:155 #, no-wrap msgid "" "$ B\n" @@ -4852,7 +5773,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:165 +#: build/C/man3/mtrace.3:167 msgid "" "The first two messages about unfreed memory correspond to the two " "B(3) calls inside the I loop. The final message corresponds " @@ -4860,35 +5781,35 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/mtrace.3:170 +#: build/C/man3/mtrace.3:172 msgid "B(1), B(3), B(3), B(3)" msgstr "" #. type: TH -#: build/C/man2/posix_fadvise.2:27 +#: build/C/man2/posix_fadvise.2:28 #, no-wrap msgid "POSIX_FADVISE" msgstr "" #. type: TH -#: build/C/man2/posix_fadvise.2:27 build/C/man2/sync_file_range.2:30 +#: build/C/man2/posix_fadvise.2:28 build/C/man2/readahead.2:28 build/C/man2/sync_file_range.2:30 #, no-wrap -msgid "2010-10-09" +msgid "2013-04-01" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:30 +#: build/C/man2/posix_fadvise.2:31 msgid "posix_fadvise - predeclare an access pattern for file data" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:33 build/C/man3/posix_fallocate.3:29 +#: build/C/man2/posix_fadvise.2:34 build/C/man3/posix_fallocate.3:31 #, no-wrap msgid "B<#include Efcntl.hE>\n" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:36 +#: build/C/man2/posix_fadvise.2:37 #, no-wrap msgid "" "BIB<, off_t >IB<, off_t >IB<, int " @@ -4896,17 +5817,17 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:45 +#: build/C/man2/posix_fadvise.2:46 msgid "B():" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:47 build/C/man3/posix_fallocate.3:42 +#: build/C/man2/posix_fadvise.2:48 build/C/man3/posix_fallocate.3:44 msgid "_XOPEN_SOURCE\\ E=\\ 600 || _POSIX_C_SOURCE\\ E=\\ 200112L" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:55 +#: build/C/man2/posix_fadvise.2:56 msgid "" "Programs can use B() to announce an intention to access file " "data in a specific pattern in the future, thus allowing the kernel to " @@ -4914,7 +5835,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:62 +#: build/C/man2/posix_fadvise.2:63 msgid "" "The I applies to a (not necessarily existent) region starting at " "I and extending for I bytes (or until the end of the file if " @@ -4923,18 +5844,18 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:64 +#: build/C/man2/posix_fadvise.2:65 msgid "Permissible values for I include:" msgstr "" #. type: TP -#: build/C/man2/posix_fadvise.2:64 +#: build/C/man2/posix_fadvise.2:65 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:70 +#: build/C/man2/posix_fadvise.2:71 msgid "" "Indicates that the application has no advice to give about its access " "pattern for the specified data. If no advice is given for an open file, " @@ -4942,79 +5863,79 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/posix_fadvise.2:70 +#: build/C/man2/posix_fadvise.2:71 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:74 +#: build/C/man2/posix_fadvise.2:75 msgid "" "The application expects to access the specified data sequentially (with " "lower offsets read before higher ones)." msgstr "" #. type: TP -#: build/C/man2/posix_fadvise.2:74 +#: build/C/man2/posix_fadvise.2:75 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:77 +#: build/C/man2/posix_fadvise.2:78 msgid "The specified data will be accessed in random order." msgstr "" #. type: TP -#: build/C/man2/posix_fadvise.2:77 +#: build/C/man2/posix_fadvise.2:78 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:80 +#: build/C/man2/posix_fadvise.2:81 msgid "The specified data will be accessed only once." msgstr "" #. type: TP -#: build/C/man2/posix_fadvise.2:80 +#: build/C/man2/posix_fadvise.2:81 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:83 +#: build/C/man2/posix_fadvise.2:84 msgid "The specified data will be accessed in the near future." msgstr "" #. type: TP -#: build/C/man2/posix_fadvise.2:83 +#: build/C/man2/posix_fadvise.2:84 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:86 +#: build/C/man2/posix_fadvise.2:87 msgid "The specified data will not be accessed in the near future." msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:89 +#: build/C/man2/posix_fadvise.2:90 msgid "On success, zero is returned. On error, an error number is returned." msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:93 +#: build/C/man2/posix_fadvise.2:94 msgid "The I argument was not a valid file descriptor." msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:96 +#: build/C/man2/posix_fadvise.2:97 msgid "An invalid value was specified for I." msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:103 +#: build/C/man2/posix_fadvise.2:104 msgid "" "The specified file descriptor refers to a pipe or FIFO. (Linux actually " "returns B in this case.)" @@ -5022,7 +5943,7 @@ msgstr "" #. of fadvise64_64() #. type: Plain text -#: build/C/man2/posix_fadvise.2:111 +#: build/C/man2/posix_fadvise.2:112 msgid "" "Kernel support first appeared in Linux 2.5.60; the underlying system call is " "called B(). Library support has been provided since glibc " @@ -5030,14 +5951,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:120 +#: build/C/man2/posix_fadvise.2:121 msgid "" "POSIX.1-2001. Note that the type of the I argument was changed from " "I to I in POSIX.1-2003 TC1." msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:126 +#: build/C/man2/posix_fadvise.2:127 msgid "" "Under Linux, B sets the readahead window to the default " "size for the backing device; B doubles this size, and " @@ -5047,7 +5968,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:133 +#: build/C/man2/posix_fadvise.2:134 msgid "" "B initiates a nonblocking read of the specified region " "into the page cache. The amount of data read may be decreased by the kernel " @@ -5056,7 +5977,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:137 +#: build/C/man2/posix_fadvise.2:138 msgid "" "In kernels before 2.6.18, B had the same semantics as " "B. This was probably a bug; since kernel 2.6.18, this " @@ -5064,7 +5985,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:145 +#: build/C/man2/posix_fadvise.2:146 msgid "" "B attempts to free cached pages associated with the " "specified region. This is useful, for example, while streaming large " @@ -5074,7 +5995,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:153 +#: build/C/man2/posix_fadvise.2:154 msgid "" "Pages that have not yet been written out will be unaffected, so if the " "application wishes to guarantee that pages will be released, it should call " @@ -5082,41 +6003,46 @@ msgid "" msgstr "" #. type: SS -#: build/C/man2/posix_fadvise.2:153 +#: build/C/man2/posix_fadvise.2:154 #, no-wrap -msgid "arm_fadvise()" +msgid "Architecture-specific variants" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:165 +#: build/C/man2/posix_fadvise.2:171 msgid "" -"The ARM architecture needs 64-bit arguments to be aligned in a suitable pair " -"of registers. On this architecture, the call signature of " -"B() is flawed, since it forces a register to be wasted as " -"padding between the I and I arguments. Therefore, since Linux " -"2.6.14, ARM defines a different system call that orders the arguments " -"suitably:" +"Some architectures require 64-bit arguments to be aligned in a suitable pair " +"of registers (see B(2) for further detail). On such " +"architectures, the call signature of B() shown in the " +"SYNOPSIS would force a register to be wasted as padding between the I " +"and I arguments. Therefore, these architectures define a version of " +"the system call that orders the arguments suitably, but otherwise is " +"otherwise exactly the same as B()." +msgstr "" + +#. type: Plain text +#: build/C/man2/posix_fadvise.2:173 +msgid "For example, since Linux 2.6.14, ARM has the following system call:" msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:170 +#: build/C/man2/posix_fadvise.2:178 #, no-wrap msgid "" "BIB<, int >IB<,>\n" "B< loff_t >IB<, loff_t >IB<);>\n" msgstr "" -#. No ARM support in glibc. #. type: Plain text -#: build/C/man2/posix_fadvise.2:177 +#: build/C/man2/posix_fadvise.2:186 msgid "" -"The behavior of this system call is otherwise exactly the same as " -"B(). No library support is provided for this system call in " -"glibc." +"These architecture-specific details are generally hidden from applications " +"by the glibc B() wrapper function, which invokes the " +"appropriate architecture-specific system call." msgstr "" #. type: Plain text -#: build/C/man2/posix_fadvise.2:182 +#: build/C/man2/posix_fadvise.2:191 msgid "" "In kernels before 2.6.6, if I was specified as 0, then this was " "interpreted literally as \"zero bytes\", rather than as meaning \"all bytes " @@ -5125,42 +6051,42 @@ msgstr "" #. FIXME . Write a posix_fadvise(3) page. #. type: Plain text -#: build/C/man2/posix_fadvise.2:188 +#: build/C/man2/posix_fadvise.2:197 msgid "" "B(2), B(2), B(3), " "B(3)" msgstr "" #. type: TH -#: build/C/man3/posix_fallocate.3:23 +#: build/C/man3/posix_fallocate.3:25 #, no-wrap msgid "POSIX_FALLOCATE" msgstr "" #. type: TH -#: build/C/man3/posix_fallocate.3:23 +#: build/C/man3/posix_fallocate.3:25 build/C/man2/shmop.2:41 #, no-wrap -msgid "2010-09-20" +msgid "2013-02-12" msgstr "" #. type: Plain text -#: build/C/man3/posix_fallocate.3:26 +#: build/C/man3/posix_fallocate.3:28 msgid "posix_fallocate - allocate file space" msgstr "" #. type: Plain text -#: build/C/man3/posix_fallocate.3:31 +#: build/C/man3/posix_fallocate.3:33 #, no-wrap msgid "BIB<, off_t >IB<, off_t >IB<);>\n" msgstr "" #. type: Plain text -#: build/C/man3/posix_fallocate.3:40 +#: build/C/man3/posix_fallocate.3:42 msgid "B():" msgstr "" #. type: Plain text -#: build/C/man3/posix_fallocate.3:59 +#: build/C/man3/posix_fallocate.3:61 msgid "" "The function B() ensures that disk space is allocated for " "the file referred to by the descriptor I for the bytes in the range " @@ -5170,41 +6096,41 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/posix_fallocate.3:64 +#: build/C/man3/posix_fallocate.3:66 msgid "" "If the size of the file is less than I+I, then the file is " "increased to this size; otherwise the file size is left unchanged." msgstr "" #. type: Plain text -#: build/C/man3/posix_fallocate.3:70 +#: build/C/man3/posix_fallocate.3:72 msgid "" "B() returns zero on success, or an error number on " "failure. Note that I is not set." msgstr "" #. type: Plain text -#: build/C/man3/posix_fallocate.3:79 +#: build/C/man3/posix_fallocate.3:81 msgid "I exceeds the maximum file size." msgstr "" #. type: Plain text -#: build/C/man3/posix_fallocate.3:89 +#: build/C/man3/posix_fallocate.3:91 msgid "I does not refer to a regular file." msgstr "" #. type: Plain text -#: build/C/man3/posix_fallocate.3:98 +#: build/C/man3/posix_fallocate.3:100 msgid "I refers to a pipe." msgstr "" #. type: Plain text -#: build/C/man3/posix_fallocate.3:101 +#: build/C/man3/posix_fallocate.3:103 msgid "B() is available since glibc 2.1.94." msgstr "" #. type: Plain text -#: build/C/man3/posix_fallocate.3:126 +#: build/C/man3/posix_fallocate.3:128 msgid "" "POSIX.1-2008 says that an implementation I give the B error " "if I was 0, or I was less than 0. POSIX.1-2001 says that an " @@ -5214,31 +6140,31 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/posix_fallocate.3:130 -msgid "B(2), B(2), B(2)" +#: build/C/man3/posix_fallocate.3:133 +msgid "B(1), B(2), B(2), B(2)" msgstr "" #. type: TH -#: build/C/man3/posix_memalign.3:28 +#: build/C/man3/posix_memalign.3:29 #, no-wrap msgid "POSIX_MEMALIGN" msgstr "" #. type: TH -#: build/C/man3/posix_memalign.3:28 +#: build/C/man3/posix_memalign.3:29 #, no-wrap -msgid "2012-03-23" +msgid "2013-09-02" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:31 +#: build/C/man3/posix_memalign.3:32 msgid "" -"posix_memalign, aligned_alloc, memalign, valloc, pvalloc - Allocate aligned " +"posix_memalign, aligned_alloc, memalign, valloc, pvalloc - allocate aligned " "memory" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:38 +#: build/C/man3/posix_memalign.3:39 #, no-wrap msgid "" "BIB<, size_t >IB<, size_t " @@ -5248,7 +6174,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:43 +#: build/C/man3/posix_memalign.3:44 #, no-wrap msgid "" "BIB<, size_t >IB<);>\n" @@ -5256,30 +6182,30 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:53 +#: build/C/man3/posix_memalign.3:54 msgid "" "B(): _POSIX_C_SOURCE\\ E=\\ 200112L || _XOPEN_SOURCE\\ " "E=\\ 600" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:56 +#: build/C/man3/posix_memalign.3:57 msgid "B(): _ISOC11_SOURCE" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:58 +#: build/C/man3/posix_memalign.3:59 msgid "B():" msgstr "" #. type: TP -#: build/C/man3/posix_memalign.3:61 +#: build/C/man3/posix_memalign.3:62 #, no-wrap msgid "Since glibc 2.12:" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:68 +#: build/C/man3/posix_memalign.3:69 #, no-wrap msgid "" "_BSD_SOURCE ||\n" @@ -5289,20 +6215,20 @@ msgid "" msgstr "" #. type: TP -#: build/C/man3/posix_memalign.3:70 +#: build/C/man3/posix_memalign.3:71 #, no-wrap msgid "Before glibc 2.12:" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:74 +#: build/C/man3/posix_memalign.3:75 msgid "" "_BSD_SOURCE || _XOPEN_SOURCE\\ E=\\ 500 || _XOPEN_SOURCE\\ &&\\ " "_XOPEN_SOURCE_EXTENDED" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:81 +#: build/C/man3/posix_memalign.3:82 msgid "" "(The (nonstandard) header file Imalloc.hE> also exposes the " "declaration of B(); no feature test macros are required.)" @@ -5310,20 +6236,20 @@ msgstr "" #. glibc does this: #. type: Plain text -#: build/C/man3/posix_memalign.3:102 +#: build/C/man3/posix_memalign.3:104 msgid "" "The function B() allocates I bytes and places the " "address of the allocated memory in I<*memptr>. The address of the allocated " "memory will be a multiple of I, which must be a power of two and " -"a multiple of I. If I is 0, then B() " -"returns either NULL, or a unique pointer value that can later be " +"a multiple of I. If I is 0, then the value placed " +"in I<*memptr> is either NULL, or a unique pointer value that can later be " "successfully passed to B(3)." msgstr "" #. The behavior of memalign() for size==0 is as for posix_memalign() #. but no standards govern this. #. type: Plain text -#: build/C/man3/posix_memalign.3:113 +#: build/C/man3/posix_memalign.3:115 msgid "" "The obsolete function B() allocates I bytes and returns a " "pointer to the allocated memory. The memory address will be a multiple of " @@ -5331,14 +6257,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:122 +#: build/C/man3/posix_memalign.3:124 msgid "" "The function B() is the same as B(), except for " "the added restriction that I should be a multiple of I." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:132 +#: build/C/man3/posix_memalign.3:133 msgid "" "The obsolete function B() allocates I bytes and returns a " "pointer to the allocated memory. The memory address will be a multiple of " @@ -5346,62 +6272,63 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:139 +#: build/C/man3/posix_memalign.3:140 msgid "" "The obsolete function B() is similar to B(), but rounds " "the size of the allocation up to the next multiple of the system page size." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:141 +#: build/C/man3/posix_memalign.3:142 msgid "For all of these functions, the memory is not zeroed." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:148 +#: build/C/man3/posix_memalign.3:149 msgid "" "B(), B(), B(), and B() return a " "pointer to the allocated memory, or NULL if the request fails." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:155 +#: build/C/man3/posix_memalign.3:157 msgid "" "B() returns zero on success, or one of the error values " -"listed in the next section on failure. Note that I is not set." +"listed in the next section on failure. The value of I is " +"indeterminate after a call to B()." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:162 +#: build/C/man3/posix_memalign.3:164 msgid "" "The I argument was not a power of two, or was not a multiple of " -"I." +"I." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:165 +#: build/C/man3/posix_memalign.3:167 msgid "There was insufficient memory to fulfill the allocation request." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:172 +#: build/C/man3/posix_memalign.3:174 msgid "" "The functions B(), B(), and B() have been " "available in all Linux libc libraries." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:176 +#: build/C/man3/posix_memalign.3:178 msgid "The function B() was added to glibc in version 2.16." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:180 +#: build/C/man3/posix_memalign.3:182 msgid "The function B() is available since glibc 2.1.91." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:187 +#: build/C/man3/posix_memalign.3:189 msgid "" "The function B() appeared in 3.0BSD. It is documented as being " "obsolete in 4.3BSD, and as legacy in SUSv2. It does not appear in " @@ -5409,47 +6336,47 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:191 +#: build/C/man3/posix_memalign.3:193 msgid "The function B() is a GNU extension." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:195 +#: build/C/man3/posix_memalign.3:197 msgid "The function B() appears in SunOS 4.1.3 but not in 4.4BSD." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:199 +#: build/C/man3/posix_memalign.3:201 msgid "The function B() comes from POSIX.1d." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:204 +#: build/C/man3/posix_memalign.3:206 msgid "The function B() is specified in the C11 standard." msgstr "" #. type: SS -#: build/C/man3/posix_memalign.3:204 +#: build/C/man3/posix_memalign.3:206 #, no-wrap msgid "Headers" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:208 +#: build/C/man3/posix_memalign.3:210 msgid "" "Everybody agrees that B() is declared in " "Istdlib.hE>." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:212 +#: build/C/man3/posix_memalign.3:214 msgid "" "On some systems B() is declared in Istdlib.hE> instead " "of Imalloc.hE>." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:219 +#: build/C/man3/posix_memalign.3:221 msgid "" "According to SUSv2, B() is declared in Istdlib.hE>. " "Libc4,5 and glibc declare it in Imalloc.hE>, and also in " @@ -5458,7 +6385,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:228 +#: build/C/man3/posix_memalign.3:230 msgid "" "On many systems there are alignment restrictions, for example, on buffers " "used for direct block device I/O. POSIX specifies the " @@ -5467,7 +6394,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:237 +#: build/C/man3/posix_memalign.3:239 msgid "" "B() verifies that I matches the requirements " "detailed above. B() may not check that the I argument " @@ -5481,26 +6408,26 @@ msgstr "" #. but not to #. .IR realloc (3). #. type: Plain text -#: build/C/man3/posix_memalign.3:265 +#: build/C/man3/posix_memalign.3:267 msgid "" "POSIX requires that memory obtained from B() can be freed " "using B(3). Some systems provide no way to reclaim memory allocated " -"with B() or B() (because one can only pass to B(3) " -"a pointer gotten from B(3), while, for example, B() would " -"call B(3) and then align the obtained value). The glibc " +"with B() or B() (because one can pass to B(3) " +"only a pointer obtained from B(3), while, for example, B() " +"would call B(3) and then align the obtained value). The glibc " "implementation allows memory obtained from any of these functions to be " "reclaimed with B(3)." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:270 +#: build/C/man3/posix_memalign.3:272 msgid "" "The glibc B(3) always returns 8-byte aligned memory addresses, so " -"these functions are only needed if you require larger alignment values." +"these functions are needed only if you require larger alignment values." msgstr "" #. type: Plain text -#: build/C/man3/posix_memalign.3:275 +#: build/C/man3/posix_memalign.3:277 msgid "B(2), B(2), B(3), B(3)" msgstr "" @@ -5510,12 +6437,6 @@ msgstr "" msgid "READAHEAD" msgstr "" -#. type: TH -#: build/C/man2/readahead.2:28 build/C/man7/shm_overview.7:27 -#, no-wrap -msgid "2010-09-10" -msgstr "" - #. type: Plain text #: build/C/man2/readahead.2:31 msgid "readahead - perform file readahead into page cache" @@ -5577,23 +6498,30 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/readahead.2:98 +#: build/C/man2/readahead.2:97 +msgid "" +"On some 32-bit architectures, the calling signature for this system call " +"differs, for the reasons described in B(2)." +msgstr "" + +#. type: Plain text +#: build/C/man2/readahead.2:103 msgid "B(2), B(2), B(2), B(2), B(2)" msgstr "" #. type: TH -#: build/C/man2/remap_file_pages.2:26 +#: build/C/man2/remap_file_pages.2:28 #, no-wrap msgid "REMAP_FILE_PAGES" msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:29 +#: build/C/man2/remap_file_pages.2:31 msgid "remap_file_pages - create a nonlinear file mapping" msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:33 +#: build/C/man2/remap_file_pages.2:35 #, no-wrap msgid "" "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n" @@ -5601,7 +6529,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:36 +#: build/C/man2/remap_file_pages.2:38 #, no-wrap msgid "" "BIB<, size_t >IB<, int " @@ -5610,7 +6538,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:49 +#: build/C/man2/remap_file_pages.2:51 msgid "" "The B() system call is used to create a nonlinear " "mapping, that is, a mapping in which the pages of the file are mapped into a " @@ -5621,31 +6549,31 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:51 +#: build/C/man2/remap_file_pages.2:53 msgid "To create a nonlinear mapping we perform the following steps:" msgstr "" #. type: TP -#: build/C/man2/remap_file_pages.2:51 +#: build/C/man2/remap_file_pages.2:53 #, no-wrap msgid "1." msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:59 +#: build/C/man2/remap_file_pages.2:61 msgid "" "Use B(2) to create a mapping (which is initially linear). This " "mapping must be created with the B flag." msgstr "" #. type: TP -#: build/C/man2/remap_file_pages.2:59 +#: build/C/man2/remap_file_pages.2:61 #, no-wrap msgid "2." msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:67 +#: build/C/man2/remap_file_pages.2:69 msgid "" "Use one or more calls to B() to rearrange the " "correspondence between the pages of the mapping and the pages of the file. " @@ -5654,7 +6582,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:78 +#: build/C/man2/remap_file_pages.2:80 msgid "" "The I and I arguments specify the region of the file that is to " "be relocated within the mapping: I is a file offset in units of the " @@ -5662,7 +6590,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:96 +#: build/C/man2/remap_file_pages.2:98 msgid "" "The I argument serves two purposes. First, it identifies the mapping " "whose pages we want to rearrange. Thus, I must be an address that " @@ -5675,7 +6603,7 @@ msgstr "" #. the analogous arguments for munmap()/mprotect() and for mlock(). #. MTK, 14 Sep 2005 #. type: Plain text -#: build/C/man2/remap_file_pages.2:110 +#: build/C/man2/remap_file_pages.2:112 msgid "" "The values specified in I and I should be multiples of the " "system page size. If they are not, then the kernel rounds I values " @@ -5683,26 +6611,26 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:114 +#: build/C/man2/remap_file_pages.2:116 msgid "The I argument must be specified as 0." msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:122 +#: build/C/man2/remap_file_pages.2:124 msgid "" "The I argument has the same meaning as for B(2), but all flags " "other than B are ignored." msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:129 +#: build/C/man2/remap_file_pages.2:131 msgid "" "On success, B() returns 0. On error, -1 is returned, and " "I is set appropriately." msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:137 +#: build/C/man2/remap_file_pages.2:139 msgid "" "I does not refer to a valid mapping created with the B " "flag." @@ -5710,24 +6638,24 @@ msgstr "" #. And possibly others from vma->vm_ops->populate() #. type: Plain text -#: build/C/man2/remap_file_pages.2:146 +#: build/C/man2/remap_file_pages.2:148 msgid "I, I, I, or I is invalid." msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:151 +#: build/C/man2/remap_file_pages.2:153 msgid "" "The B() system call appeared in Linux 2.5.46; glibc " "support was added in version 2.3.3." msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:155 +#: build/C/man2/remap_file_pages.2:157 msgid "The B() system call is Linux-specific." msgstr "" #. type: Plain text -#: build/C/man2/remap_file_pages.2:162 +#: build/C/man2/remap_file_pages.2:164 msgid "" "B(2), B(2), B(2), B(2), B(2), " "B(2)" @@ -5747,7 +6675,7 @@ msgstr "" #. type: Plain text #: build/C/man3/shm_open.3:29 -msgid "shm_open, shm_unlink - Create/open or unlink POSIX shared memory objects" +msgid "shm_open, shm_unlink - create/open or unlink POSIX shared memory objects" msgstr "" #. type: Plain text @@ -5817,33 +6745,33 @@ msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:87 +#: build/C/man3/shm_open.3:89 msgid "" "Open the object for read access. A shared memory object opened in this way " -"can only be B(2)ed for read (B) access." +"can be B(2)ed only for read (B) access." msgstr "" #. type: TP -#: build/C/man3/shm_open.3:87 +#: build/C/man3/shm_open.3:89 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:90 +#: build/C/man3/shm_open.3:92 msgid "Open the object for read-write access." msgstr "" #. type: TP -#: build/C/man3/shm_open.3:90 +#: build/C/man3/shm_open.3:92 #, no-wrap msgid "B" msgstr "" -#. In truth it is actually the file system IDs on Linux, but these +#. In truth it is actually the filesystem IDs on Linux, but these #. are nearly always the same as the effective IDs. (MTK, Jul 05) #. type: Plain text -#: build/C/man3/shm_open.3:110 +#: build/C/man3/shm_open.3:112 msgid "" "Create the shared memory object if it does not exist. The user and group " "ownership of the object are taken from the corresponding effective IDs of " @@ -5856,7 +6784,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:116 +#: build/C/man3/shm_open.3:118 msgid "" "A new shared memory object initially has zero length\\(emthe size of the " "object can be set using B(2). The newly allocated bytes of a " @@ -5864,13 +6792,13 @@ msgid "" msgstr "" #. type: TP -#: build/C/man3/shm_open.3:116 +#: build/C/man3/shm_open.3:118 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:125 +#: build/C/man3/shm_open.3:127 msgid "" "If B was also specified, and a shared memory object with the given " "I already exists, return an error. The check for the existence of the " @@ -5878,25 +6806,25 @@ msgid "" msgstr "" #. type: TP -#: build/C/man3/shm_open.3:125 +#: build/C/man3/shm_open.3:127 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:128 +#: build/C/man3/shm_open.3:130 msgid "If the shared memory object already exists, truncate it to zero bytes." msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:131 +#: build/C/man3/shm_open.3:133 msgid "" "Definitions of these flag values can be obtained by including " "Ifcntl.hE>." msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:142 +#: build/C/man3/shm_open.3:144 msgid "" "On successful completion B() returns a new file descriptor " "referring to the shared memory object. This file descriptor is guaranteed " @@ -5906,7 +6834,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:151 +#: build/C/man3/shm_open.3:153 msgid "" "The file descriptor is normally used in subsequent calls to B(2) " "(for a newly created object) and B(2). After a call to B(2) " @@ -5914,7 +6842,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:169 +#: build/C/man3/shm_open.3:171 msgid "" "The operation of B() is analogous to B(2): it removes a " "shared memory object name, and, once all processes have unmapped the object, " @@ -5925,7 +6853,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:178 +#: build/C/man3/shm_open.3:180 msgid "" "On success, B() returns a nonnegative file descriptor. On " "failure, B() returns -1. B() returns 0 on success, " @@ -5933,19 +6861,19 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:185 +#: build/C/man3/shm_open.3:187 msgid "" "On failure, I is set to indicate the cause of the error. Values " "which may appear in I include the following:" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:190 +#: build/C/man3/shm_open.3:192 msgid "Permission to B() the shared memory object was denied." msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:200 +#: build/C/man3/shm_open.3:202 msgid "" "Permission was denied to B() I in the specified I, or " "B was specified and the caller does not have write permission on " @@ -5953,75 +6881,75 @@ msgid "" msgstr "" #. type: TP -#: build/C/man3/shm_open.3:200 build/C/man2/shmget.2:192 +#: build/C/man3/shm_open.3:202 build/C/man2/shmget.2:195 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:211 +#: build/C/man3/shm_open.3:213 msgid "" "Both B and B were specified to B() and the " "shared memory object specified by I already exists." msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:218 +#: build/C/man3/shm_open.3:220 msgid "The I argument to B() was invalid." msgstr "" #. type: TP -#: build/C/man3/shm_open.3:218 +#: build/C/man3/shm_open.3:220 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:221 +#: build/C/man3/shm_open.3:223 msgid "The process already has the maximum number of files open." msgstr "" #. type: TP -#: build/C/man3/shm_open.3:221 +#: build/C/man3/shm_open.3:223 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:227 +#: build/C/man3/shm_open.3:229 msgid "The length of I exceeds B." msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:231 +#: build/C/man3/shm_open.3:233 msgid "The limit on the total number of files open on the system has been reached." msgstr "" #. type: TP -#: build/C/man3/shm_open.3:231 build/C/man3/shm_open.3:240 build/C/man2/shmget.2:206 +#: build/C/man3/shm_open.3:233 build/C/man3/shm_open.3:242 build/C/man2/shmget.2:209 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:240 +#: build/C/man3/shm_open.3:242 msgid "" "An attempt was made to B() a I that did not exist, and " "B was not specified." msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:247 +#: build/C/man3/shm_open.3:249 msgid "An attempt was to made to B() a I that does not exist." msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:249 +#: build/C/man3/shm_open.3:251 msgid "These functions are provided in glibc 2.2 and later." msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:255 +#: build/C/man3/shm_open.3:257 msgid "" "POSIX.1-2001 says that the group ownership of a newly created shared memory " "object is set to either the calling process's effective group ID or \"a " @@ -6029,7 +6957,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:264 +#: build/C/man3/shm_open.3:266 msgid "" "POSIX leaves the behavior of the combination of B and B " "unspecified. On Linux, this will successfully truncate an existing shared " @@ -6037,14 +6965,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:269 +#: build/C/man3/shm_open.3:271 msgid "" "The POSIX shared memory object implementation on Linux 2.4 makes use of a " -"dedicated file system, which is normally mounted under I." +"dedicated filesystem, which is normally mounted under I." msgstr "" #. type: Plain text -#: build/C/man3/shm_open.3:280 +#: build/C/man3/shm_open.3:282 msgid "" "B(2), B(2), B(2), B(2), B(2), " "B(2), B(2), B(2), B(2), B(7)" @@ -6056,9 +6984,15 @@ msgstr "" msgid "SHM_OVERVIEW" msgstr "" +#. type: TH +#: build/C/man7/shm_overview.7:27 +#, no-wrap +msgid "2010-09-10" +msgstr "" + #. type: Plain text #: build/C/man7/shm_overview.7:30 -msgid "shm_overview - Overview of POSIX shared memory" +msgid "shm_overview - overview of POSIX shared memory" msgstr "" #. type: Plain text @@ -6221,16 +7155,16 @@ msgstr "" #. type: SS #: build/C/man7/shm_overview.7:94 #, no-wrap -msgid "Accessing shared memory objects via the file system" +msgid "Accessing shared memory objects via the filesystem" msgstr "" #. type: Plain text #: build/C/man7/shm_overview.7:101 msgid "" -"On Linux, shared memory objects are created in a (I) virtual file " -"system, normally mounted under I. Since kernel 2.6.19, Linux " +"On Linux, shared memory objects are created in a (I) virtual " +"filesystem, normally mounted under I. Since kernel 2.6.19, Linux " "supports the use of access control lists (ACLs) to control the permissions " -"of objects in the virtual file system." +"of objects in the virtual filesystem." msgstr "" #. type: Plain text @@ -6258,53 +7192,53 @@ msgid "" msgstr "" #. type: TH -#: build/C/man2/shmctl.2:43 +#: build/C/man2/shmctl.2:45 #, no-wrap msgid "SHMCTL" msgstr "" #. type: TH -#: build/C/man2/shmctl.2:43 +#: build/C/man2/shmctl.2:45 #, no-wrap -msgid "2008-08-07" +msgid "2013-03-18" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:46 -msgid "shmctl - shared memory control" +#: build/C/man2/shmctl.2:48 +msgid "shmctl - System V shared memory control" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:49 build/C/man2/shmget.2:42 +#: build/C/man2/shmctl.2:51 build/C/man2/shmget.2:44 msgid "B<#include Esys/ipc.hE>" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:51 build/C/man2/shmget.2:44 +#: build/C/man2/shmctl.2:53 build/C/man2/shmget.2:46 msgid "B<#include Esys/shm.hE>" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:53 +#: build/C/man2/shmctl.2:55 msgid "BIB<, int >IB<, struct shmid_ds *>IB<);>" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:60 +#: build/C/man2/shmctl.2:62 msgid "" "B() performs the control operation specified by I on the " -"shared memory segment whose identifier is given in I." +"System V shared memory segment whose identifier is given in I." msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:65 +#: build/C/man2/shmctl.2:67 msgid "" "The I argument is a pointer to a I structure, defined in " "Isys/shm.hE> as follows:" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:79 +#: build/C/man2/shmctl.2:81 #, no-wrap msgid "" "struct shmid_ds {\n" @@ -6321,14 +7255,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:87 +#: build/C/man2/shmctl.2:89 msgid "" -"The I structure is defined in Isys/ipc.hE> as follows " -"(the highlighted fields are settable using B):" +"The I structure is defined as follows (the highlighted fields are " +"settable using B):" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:100 +#: build/C/man2/shmctl.2:102 #, no-wrap msgid "" "struct ipc_perm {\n" @@ -6344,18 +7278,18 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:106 +#: build/C/man2/shmctl.2:108 msgid "Valid values for I are:" msgstr "" #. type: TP -#: build/C/man2/shmctl.2:107 +#: build/C/man2/shmctl.2:109 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:116 +#: build/C/man2/shmctl.2:118 msgid "" "Copy information from the kernel data structure associated with I " "into the I structure pointed to by I. The caller must have " @@ -6363,13 +7297,13 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/shmctl.2:116 +#: build/C/man2/shmctl.2:118 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:134 +#: build/C/man2/shmctl.2:136 msgid "" "Write the values of some members of the I structure pointed to by " "I to the kernel data structure associated with this shared memory " @@ -6381,13 +7315,13 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/shmctl.2:134 +#: build/C/man2/shmctl.2:136 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:151 +#: build/C/man2/shmctl.2:153 msgid "" "Mark the segment to be destroyed. The segment will only actually be " "destroyed after the last process detaches it (i.e., when the I " @@ -6399,20 +7333,27 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:154 +#: build/C/man2/shmctl.2:156 msgid "" "The caller I ensure that a segment is eventually destroyed; otherwise " "its pages that were faulted in will remain in memory or swap." msgstr "" +#. type: Plain text +#: build/C/man2/shmctl.2:161 +msgid "" +"See also the description of I in " +"B(5)." +msgstr "" + #. type: TP -#: build/C/man2/shmctl.2:154 +#: build/C/man2/shmctl.2:161 #, no-wrap msgid "B (Linux-specific)" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:167 +#: build/C/man2/shmctl.2:174 msgid "" "Returns information about system-wide shared memory limits and parameters in " "the structure pointed to by I. This structure is of type I " @@ -6421,7 +7362,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:181 +#: build/C/man2/shmctl.2:188 #, no-wrap msgid "" "struct shminfo {\n" @@ -6438,20 +7379,20 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:194 +#: build/C/man2/shmctl.2:201 msgid "" "The I, I, and I settings can be changed via I " "files of the same name; see B(5) for details." msgstr "" #. type: TP -#: build/C/man2/shmctl.2:194 +#: build/C/man2/shmctl.2:201 #, no-wrap msgid "B (Linux-specific)" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:205 +#: build/C/man2/shmctl.2:212 msgid "" "Returns a I structure whose fields contain information about " "system resources consumed by shared memory. This structure is defined in " @@ -6459,7 +7400,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:222 +#: build/C/man2/shmctl.2:229 #, no-wrap msgid "" "struct shm_info {\n" @@ -6479,13 +7420,13 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/shmctl.2:224 +#: build/C/man2/shmctl.2:231 #, no-wrap msgid "B (Linux-specific)" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:235 +#: build/C/man2/shmctl.2:242 msgid "" "Returns a I structure as for B. However, the I " "argument is not a segment identifier, but instead an index into the kernel's " @@ -6494,20 +7435,20 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:238 +#: build/C/man2/shmctl.2:245 msgid "" "The caller can prevent or allow swapping of a shared memory segment with the " "following I values:" msgstr "" #. type: TP -#: build/C/man2/shmctl.2:239 +#: build/C/man2/shmctl.2:246 #, no-wrap msgid "B (Linux-specific)" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:251 +#: build/C/man2/shmctl.2:258 msgid "" "Prevent swapping of the shared memory segment. The caller must fault in any " "pages that are required to be present after locking is enabled. If a " @@ -6517,13 +7458,13 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/shmctl.2:251 +#: build/C/man2/shmctl.2:258 #, no-wrap msgid "B (Linux-specific)" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:254 +#: build/C/man2/shmctl.2:261 msgid "Unlock the segment, allowing it to be swapped out." msgstr "" @@ -6532,7 +7473,7 @@ msgstr "" #. This was a botch-up in the move to RLIMIT_MEMLOCK, and was fixed #. in 2.6.10. MTK, May 2005 #. type: Plain text -#: build/C/man2/shmctl.2:272 +#: build/C/man2/shmctl.2:279 msgid "" "In kernels before 2.6.10, only a privileged process could employ B " "and B. Since kernel 2.6.10, an unprivileged process can employ " @@ -6542,7 +7483,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:290 +#: build/C/man2/shmctl.2:297 msgid "" "A successful B or B operation returns the index of the " "highest used entry in the kernel's internal array recording information " @@ -6554,12 +7495,12 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:294 +#: build/C/man2/shmctl.2:301 msgid "On error, -1 is returned, and I is set appropriately." msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:303 +#: build/C/man2/shmctl.2:310 msgid "" "B or B is requested and I does not allow " "read access for I, and the calling process does not have the " @@ -6567,25 +7508,25 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:314 +#: build/C/man2/shmctl.2:321 msgid "" "The argument I has value B or B but the address " "pointed to by I isn't accessible." msgstr "" #. type: TP -#: build/C/man2/shmctl.2:314 +#: build/C/man2/shmctl.2:321 build/C/man2/shmop.2:197 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:317 +#: build/C/man2/shmctl.2:324 build/C/man2/shmop.2:200 msgid "I points to a removed identifier." msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:326 +#: build/C/man2/shmctl.2:333 msgid "" "I is not a valid identifier, or I is not a valid command. Or: " "for a B operation, the index value specified in I referred " @@ -6593,7 +7534,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:337 +#: build/C/man2/shmctl.2:344 msgid "" "(In kernels since 2.6.9), B was specified and the size of the " "to-be-locked segment would mean that the total bytes in locked shared memory " @@ -6602,21 +7543,15 @@ msgid "" "(see B(2))." msgstr "" -#. type: TP -#: build/C/man2/shmctl.2:337 -#, no-wrap -msgid "B" -msgstr "" - #. type: Plain text -#: build/C/man2/shmctl.2:342 +#: build/C/man2/shmctl.2:349 msgid "" "B is attempted, and the GID or UID value is too large to be stored " "in the structure pointed to by I." msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:354 +#: build/C/man2/shmctl.2:361 msgid "" "B or B is attempted, and the effective user ID of the " "calling process is not that of the creator (found in I), or " @@ -6625,7 +7560,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:366 +#: build/C/man2/shmctl.2:373 msgid "" "Or (in kernels before 2.6.9), B or B was specified, " "but the process was not privileged (Linux: did not have the B " @@ -6635,20 +7570,32 @@ msgstr "" #. SVr4 documents an additional error condition EMFILE. #. type: Plain text -#: build/C/man2/shmctl.2:371 build/C/man2/shmget.2:232 build/C/man2/shmop.2:229 +#: build/C/man2/shmctl.2:378 build/C/man2/shmget.2:235 build/C/man2/shmop.2:234 msgid "SVr4, POSIX.1-2001." msgstr "" +#. Like Linux, the FreeBSD man pages still document +#. the inclusion of these header files. +#. type: Plain text +#: build/C/man2/shmctl.2:391 build/C/man2/shmget.2:251 +msgid "" +"The inclusion of Isys/types.hE> and Isys/ipc.hE> 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/shmctl.2:382 +#: build/C/man2/shmctl.2:403 msgid "" "The B, B and B operations are used by the " "B(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 filesystem interface." msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:390 +#: build/C/man2/shmctl.2:411 msgid "" "Linux permits a process to attach (B(2)) a shared memory segment " "that has already been marked for deletion using I. This " @@ -6657,7 +7604,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:403 +#: build/C/man2/shmctl.2:424 msgid "" "Various fields in a I were typed as I under Linux " "2.2 and have become I under Linux 2.4. To take advantage of this, a " @@ -6666,47 +7613,41 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmctl.2:410 +#: build/C/man2/shmctl.2:431 msgid "" "B(2), B(2), B(2), B(2), B(7), " "B(7)" msgstr "" #. type: TH -#: build/C/man2/shmget.2:36 +#: build/C/man2/shmget.2:38 #, no-wrap msgid "SHMGET" msgstr "" -#. type: TH -#: build/C/man2/shmget.2:36 -#, no-wrap -msgid "2006-05-02" -msgstr "" - #. type: Plain text -#: build/C/man2/shmget.2:39 -msgid "shmget - allocates a shared memory segment" +#: build/C/man2/shmget.2:41 +msgid "shmget - allocates a System V shared memory segment" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:46 +#: build/C/man2/shmget.2:48 msgid "BIB<, size_t >IB<, int >IB<);>" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:70 +#: build/C/man2/shmget.2:72 msgid "" -"B() returns the identifier of the shared memory segment associated " -"with the value of the argument I. A new shared memory segment, with " -"size equal to the value of I rounded up to a multiple of B, " -"is created if I has the value B or I isn't " -"B, no shared memory segment corresponding to I exists, and " -"B is specified in I." +"B() returns the identifier of the System V shared memory segment " +"associated with the value of the argument I. A new shared memory " +"segment, with size equal to the value of I rounded up to a multiple of " +"B, is created if I has the value B or I " +"isn't B, no shared memory segment corresponding to I " +"exists, and B is specified in I." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:89 +#: build/C/man2/shmget.2:91 msgid "" "If I specifies both B and B and a shared memory " "segment already exists for I, then B() fails with I set " @@ -6715,18 +7656,18 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:93 +#: build/C/man2/shmget.2:95 msgid "The value I is composed of:" msgstr "" #. type: TP -#: build/C/man2/shmget.2:93 +#: build/C/man2/shmget.2:95 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:100 +#: build/C/man2/shmget.2:102 msgid "" "to create a new segment. If this flag is not used, then B() will " "find the segment associated with I and check to see if the user has " @@ -6734,24 +7675,24 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/shmget.2:100 +#: build/C/man2/shmget.2:102 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:103 +#: build/C/man2/shmget.2:105 msgid "used with B to ensure failure if the segment already exists." msgstr "" #. type: TP -#: build/C/man2/shmget.2:103 +#: build/C/man2/shmget.2:105 #, no-wrap msgid "I" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:113 +#: build/C/man2/shmget.2:115 msgid "" "(least significant 9 bits) specifying the permissions granted to the owner, " "group, and world. These bits have the same format, and the same meaning, as " @@ -6760,20 +7701,20 @@ msgid "" msgstr "" #. type: TP -#: build/C/man2/shmget.2:113 +#: build/C/man2/shmget.2:115 #, no-wrap msgid "B (since Linux 2.6)" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:119 +#: build/C/man2/shmget.2:121 msgid "" -"Allocate the segment using \"huge pages.\" See the kernel source file " +"Allocate the segment using \"huge pages.\" See the Linux kernel source file " "I for further information." msgstr "" #. type: TP -#: build/C/man2/shmget.2:119 +#: build/C/man2/shmget.2:121 #, no-wrap msgid "B (since Linux 2.6.15)" msgstr "" @@ -6781,7 +7722,7 @@ msgstr "" #. As at 2.6.17-rc2, this flag has no effect if SHM_HUGETLB was also #. specified. #. type: Plain text -#: build/C/man2/shmget.2:138 +#: build/C/man2/shmget.2:140 msgid "" "This flag serves the same purpose as the B(2) B flag. " "Do not reserve swap space for this segment. When swap space is reserved, " @@ -6792,7 +7733,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:146 +#: build/C/man2/shmget.2:148 msgid "" "When a new shared memory segment is created, its contents are initialized to " "zero values, and its associated data structure, I (see " @@ -6800,72 +7741,74 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:151 +#: build/C/man2/shmget.2:153 msgid "" "I and I are set to the effective user ID of the " "calling process." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:156 +#: build/C/man2/shmget.2:158 msgid "" "I and I are set to the effective group ID of " "the calling process." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:161 +#: build/C/man2/shmget.2:163 msgid "" "The least significant 9 bits of I are set to the least " "significant 9 bit of I." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:165 +#: build/C/man2/shmget.2:167 msgid "I is set to the value of I." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:172 +#: build/C/man2/shmget.2:174 msgid "I, I, I and I are set to 0." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:175 +#: build/C/man2/shmget.2:177 msgid "I is set to the current time." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:178 +#: build/C/man2/shmget.2:180 msgid "" "If the shared memory segment already exists, the permissions are verified, " "and a check is made to see if it is marked for destruction." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:182 -msgid "A valid segment identifier, I, is returned on success, -1 on error." +#: build/C/man2/shmget.2:185 +msgid "" +"On success, a valid shared memory identifier is returned. On errir, -1 is " +"returned, and I is set to indicate the error." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:186 +#: build/C/man2/shmget.2:189 msgid "On failure, I is set to one of the following:" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:192 +#: build/C/man2/shmget.2:195 msgid "" "The user does not have permission to access the shared memory segment, and " "does not have the B capability." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:196 +#: build/C/man2/shmget.2:199 msgid "B was specified and the segment exists." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:202 +#: build/C/man2/shmget.2:205 msgid "" "A new segment was to be created and I E B or I E " "B, or no new segment was to be created, a segment with given key " @@ -6873,17 +7816,17 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:211 +#: build/C/man2/shmget.2:214 msgid "No segment exists for the given I, and B was not specified." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:214 +#: build/C/man2/shmget.2:217 msgid "No memory could be allocated for segment overhead." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:222 +#: build/C/man2/shmget.2:225 msgid "" "All possible shared memory IDs have been taken (B), or allocating a " "segment of the requested I would cause the system to exceed the " @@ -6891,19 +7834,19 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:229 +#: build/C/man2/shmget.2:232 msgid "" "The B flag was specified, but the caller was not privileged " "(did not have the B capability)." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:235 +#: build/C/man2/shmget.2:238 msgid "B is a nonportable Linux extension." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:245 +#: build/C/man2/shmget.2:261 msgid "" "B isn't a flag field but a I type. If this special " "value is used for I, the system call ignores everything but the least " @@ -6912,53 +7855,53 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:249 +#: build/C/man2/shmget.2:265 msgid "" "The following limits on shared memory segment resources affect the " "B() call:" msgstr "" #. type: TP -#: build/C/man2/shmget.2:249 +#: build/C/man2/shmget.2:265 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:254 +#: build/C/man2/shmget.2:270 msgid "" "System wide maximum of shared memory pages (on Linux, this limit can be read " "and modified via I)." msgstr "" #. type: TP -#: build/C/man2/shmget.2:254 +#: build/C/man2/shmget.2:270 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:259 +#: build/C/man2/shmget.2:275 msgid "" "Maximum size in bytes for a shared memory segment: policy dependent (on " "Linux, this limit can be read and modified via I)." msgstr "" #. type: TP -#: build/C/man2/shmget.2:259 +#: build/C/man2/shmget.2:275 #, no-wrap msgid "B" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:265 +#: build/C/man2/shmget.2:281 msgid "" "Minimum size in bytes for a shared memory segment: implementation dependent " "(currently 1 byte, though B is the effective minimum size)." msgstr "" #. type: TP -#: build/C/man2/shmget.2:265 +#: build/C/man2/shmget.2:281 #, no-wrap msgid "B" msgstr "" @@ -6967,7 +7910,7 @@ msgstr "" #. that we could create one more segment than SHMMNI -- MTK #. This /proc file is not available in Linux 2.2 and earlier -- MTK #. type: Plain text -#: build/C/man2/shmget.2:274 +#: build/C/man2/shmget.2:290 msgid "" "System wide maximum number of shared memory segments: implementation " "dependent (currently 4096, was 128 before Linux 2.3.99; on Linux, this limit " @@ -6975,52 +7918,46 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:278 +#: build/C/man2/shmget.2:294 msgid "" "The implementation has no specific limits for the per-process maximum number " "of shared memory segments (B)." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:284 +#: build/C/man2/shmget.2:300 msgid "" "Until version 2.3.30 Linux would return B for a B() on a " "shared memory segment scheduled for deletion." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:290 +#: build/C/man2/shmget.2:306 msgid "" "The name choice B was perhaps unfortunate, B would " "more clearly show its function." msgstr "" #. type: Plain text -#: build/C/man2/shmget.2:298 +#: build/C/man2/shmget.2:314 msgid "" "B(2), B(2), B(2), B(3), B(7), " "B(7), B(7)" msgstr "" #. type: TH -#: build/C/man2/shmop.2:39 +#: build/C/man2/shmop.2:41 #, no-wrap msgid "SHMOP" msgstr "" -#. type: TH -#: build/C/man2/shmop.2:39 -#, no-wrap -msgid "2008-06-03" -msgstr "" - #. type: Plain text -#: build/C/man2/shmop.2:42 -msgid "shmat, shmdt - shared memory operations" +#: build/C/man2/shmop.2:44 +msgid "shmat, shmdt - System V shared memory operations" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:46 +#: build/C/man2/shmop.2:48 #, no-wrap msgid "" "B<#include Esys/types.hE>\n" @@ -7028,7 +7965,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:48 +#: build/C/man2/shmop.2:50 #, no-wrap msgid "" "BIB<, const void *>IB<, int " @@ -7036,28 +7973,28 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:50 +#: build/C/man2/shmop.2:52 #, no-wrap msgid "BIB<);>\n" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:59 +#: build/C/man2/shmop.2:61 msgid "" -"B() attaches the shared memory segment identified by I to the " -"address space of the calling process. The attaching address is specified by " -"I with one of the following criteria:" +"B() attaches the System V shared memory segment identified by " +"I to the address space of the calling process. The attaching address " +"is specified by I with one of the following criteria:" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:65 +#: build/C/man2/shmop.2:67 msgid "" "If I is NULL, the system chooses a suitable (unused) address at " "which to attach the segment." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:80 +#: build/C/man2/shmop.2:82 msgid "" "If I isn't NULL and B is specified in I, the " "attach occurs at the address equal to I rounded down to the nearest " @@ -7066,7 +8003,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:90 +#: build/C/man2/shmop.2:92 msgid "" "If B is specified in I, the segment is attached for " "reading and the process must have read permission for the segment. " @@ -7076,7 +8013,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:105 +#: build/C/man2/shmop.2:107 msgid "" "The (Linux-specific) B flag may be specified in I to " "indicate that the mapping of the segment should replace any existing mapping " @@ -7086,7 +8023,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:112 +#: build/C/man2/shmop.2:114 msgid "" "The B(2) value of the calling process is not altered by the attach. " "The segment will automatically be detached at process exit. The same " @@ -7095,7 +8032,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:120 +#: build/C/man2/shmop.2:122 msgid "" "A successful B() call updates the members of the I " "structure (see B(2)) associated with the shared memory segment as " @@ -7103,22 +8040,22 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:123 +#: build/C/man2/shmop.2:125 msgid "I is set to the current time." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:126 build/C/man2/shmop.2:152 +#: build/C/man2/shmop.2:128 build/C/man2/shmop.2:154 msgid "I is set to the process-ID of the calling process." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:129 +#: build/C/man2/shmop.2:131 msgid "I is incremented by one." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:140 +#: build/C/man2/shmop.2:142 msgid "" "B() detaches the shared memory segment located at the address " "specified by I from the address space of the calling process. The " @@ -7127,45 +8064,45 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:146 +#: build/C/man2/shmop.2:148 msgid "" "On a successful B() call the system updates the members of the " "I structure associated with the shared memory segment as follows:" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:149 +#: build/C/man2/shmop.2:151 msgid "I is set to the current time." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:157 +#: build/C/man2/shmop.2:159 msgid "" "I is decremented by one. If it becomes 0 and the segment is " "marked for deletion, the segment is deleted." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:161 +#: build/C/man2/shmop.2:163 msgid "After a B(2) the child inherits the attached shared memory segments." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:165 +#: build/C/man2/shmop.2:167 msgid "" "After an B(2) all attached shared memory segments are detached from " "the process." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:169 +#: build/C/man2/shmop.2:171 msgid "" "Upon B<_exit>(2) all attached shared memory segments are detached from the " "process." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:177 +#: build/C/man2/shmop.2:179 msgid "" "On success B() returns the address of the attached shared memory " "segment; on error I<(void\\ *)\\ -1> is returned, and I is set to " @@ -7173,26 +8110,26 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:183 +#: build/C/man2/shmop.2:185 msgid "" "On success B() returns 0; on error -1 is returned, and I is " "set to indicate the cause of the error." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:189 +#: build/C/man2/shmop.2:191 msgid "When B() fails, I is set to one of the following:" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:195 +#: build/C/man2/shmop.2:197 msgid "" "The calling process does not have the required permissions for the requested " "attach type, and does not have the B capability." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:209 +#: build/C/man2/shmop.2:214 msgid "" "Invalid I value, unaligned (i.e., not page-aligned and B was " "not specified) or invalid I value, or can't attach segment at " @@ -7200,34 +8137,34 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:212 +#: build/C/man2/shmop.2:217 msgid "Could not allocate memory for the descriptor or for the page tables." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:218 +#: build/C/man2/shmop.2:223 msgid "When B() fails, I is set as follows:" msgstr "" #. The following since 2.6.17-rc1: #. type: Plain text -#: build/C/man2/shmop.2:226 +#: build/C/man2/shmop.2:231 msgid "" "There is no shared memory segment attached at I; or, I is " "not aligned on a page boundary." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:245 +#: build/C/man2/shmop.2:250 msgid "" "In SVID 3 (or perhaps earlier) the type of the I argument was " -"changed from I into I, and the returned type of " -"B() from I into I. (Linux libc4 and libc5 have the " -"I prototypes; glibc2 has I.)" +"changed from I into I, and the returned type of " +"B() from I into I. (Linux libc4 and libc5 have " +"the I prototypes; glibc2 has I.)" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:257 +#: build/C/man2/shmop.2:262 msgid "" "Using B() with I equal to NULL is the preferred, portable " "way of attaching a shared memory segment. Be aware that the shared memory " @@ -7238,7 +8175,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:262 +#: build/C/man2/shmop.2:267 msgid "" "On Linux, it is possible to attach a shared memory segment even if it is " "already marked to be deleted. However, POSIX.1-2001 does not specify this " @@ -7246,14 +8183,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:265 +#: build/C/man2/shmop.2:270 msgid "The following system parameter affects B():" msgstr "" #. FIXME A good explanation of the rationale for the existence #. of SHMLBA would be useful here #. type: TP -#: build/C/man2/shmop.2:265 +#: build/C/man2/shmop.2:270 #, no-wrap msgid "B" msgstr "" @@ -7262,45 +8199,45 @@ msgstr "" #. architectures (i.e., SHMLBA != PAGE_SIZE for some architectures) #. -- MTK, Nov 04 #. type: Plain text -#: build/C/man2/shmop.2:278 +#: build/C/man2/shmop.2:283 msgid "" "Segment low boundary address multiple. Must be page aligned. For the " "current implementation the B value is B." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:282 +#: build/C/man2/shmop.2:287 msgid "" "The implementation places no intrinsic limit on the per-process maximum " "number of shared memory segments (B)." msgstr "" #. type: Plain text -#: build/C/man2/shmop.2:290 +#: build/C/man2/shmop.2:295 msgid "" "B(2), B(2), B(2), B(2), B(7), " "B(7), B(7)" msgstr "" #. type: TH -#: build/C/man2/subpage_prot.2:28 +#: build/C/man2/subpage_prot.2:30 #, no-wrap msgid "SUBPAGE_PROT" msgstr "" #. type: TH -#: build/C/man2/subpage_prot.2:28 +#: build/C/man2/subpage_prot.2:30 #, no-wrap -msgid "2010-10-30" +msgid "2012-07-13" msgstr "" #. type: Plain text -#: build/C/man2/subpage_prot.2:31 +#: build/C/man2/subpage_prot.2:33 msgid "subpage_prot - define a subpage protection for an address range" msgstr "" #. type: Plain text -#: build/C/man2/subpage_prot.2:35 +#: build/C/man2/subpage_prot.2:37 #, no-wrap msgid "" "BIB<, unsigned long >IB<,>\n" @@ -7308,7 +8245,12 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/subpage_prot.2:42 +#: build/C/man2/subpage_prot.2:41 +msgid "I: There is no glibc wrapper for this system call; see NOTES." +msgstr "" + +#. type: Plain text +#: build/C/man2/subpage_prot.2:47 msgid "" "The PowerPC-specific B() system call provides the facility to " "control the access permissions on individual 4kB subpages on systems " @@ -7316,7 +8258,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/subpage_prot.2:49 +#: build/C/man2/subpage_prot.2:54 msgid "" "The protection map is applied to the memory pages in the region starting at " "I and continuing for I bytes. Both of these arguments must be " @@ -7324,7 +8266,7 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/subpage_prot.2:61 +#: build/C/man2/subpage_prot.2:66 msgid "" "The protection map is specified in the buffer pointed to by I. The map " "has 2 bits per 4kB subpage; thus each 32-bit word specifies the protections " @@ -7335,19 +8277,19 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/subpage_prot.2:66 +#: build/C/man2/subpage_prot.2:71 msgid "" "On success, B() returns 0. Otherwise, one of the error codes " "specified below is returned." msgstr "" #. type: Plain text -#: build/C/man2/subpage_prot.2:72 +#: build/C/man2/subpage_prot.2:77 msgid "The buffer referred to by I is not accessible." msgstr "" #. type: Plain text -#: build/C/man2/subpage_prot.2:82 +#: build/C/man2/subpage_prot.2:87 msgid "" "The I or I arguments are incorrect. Both of these arguments must " "be aligned to a multiple of the system page size, and they must not refer to " @@ -7356,12 +8298,12 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/subpage_prot.2:85 build/C/man2/sync_file_range.2:166 +#: build/C/man2/subpage_prot.2:90 build/C/man2/sync_file_range.2:166 msgid "Out of memory." msgstr "" #. type: Plain text -#: build/C/man2/subpage_prot.2:91 +#: build/C/man2/subpage_prot.2:96 msgid "" "This system call is provided on the PowerPC architecture since Linux " "2.6.25. The system call is provided only if the kernel is configured with " @@ -7369,7 +8311,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/subpage_prot.2:98 +#: build/C/man2/subpage_prot.2:101 +msgid "" +"Glibc does not provide a wrapper for this system call; call it using " +"B(2)." +msgstr "" + +#. type: Plain text +#: build/C/man2/subpage_prot.2:106 msgid "" "Normal page protections (at the 64-kB page level) also apply; the subpage " "protection mechanism is an additional constraint, so putting 0 in a 2-bit " @@ -7377,7 +8326,7 @@ msgid "" msgstr "" #. type: SS -#: build/C/man2/subpage_prot.2:98 +#: build/C/man2/subpage_prot.2:106 #, no-wrap msgid "Rationale" msgstr "" @@ -7389,7 +8338,7 @@ msgstr "" #. But Paul Mackerass says (Oct 2010): I'm pretty sure we now only switch #. the affected segment, not the whole process. #. type: Plain text -#: build/C/man2/subpage_prot.2:120 +#: build/C/man2/subpage_prot.2:128 msgid "" "This system call is provided to assist writing emulators that operate using " "64-kB pages on PowerPC systems. When emulating systems such as x86, which " @@ -7407,13 +8356,13 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/subpage_prot.2:123 -msgid "B(2), B(2);" +#: build/C/man2/subpage_prot.2:131 +msgid "B(2), B(2)" msgstr "" #. type: Plain text -#: build/C/man2/subpage_prot.2:126 -msgid "the kernel source file I." +#: build/C/man2/subpage_prot.2:134 +msgid "I in the Linux kernel source tree" msgstr "" #. type: TH @@ -7525,12 +8474,12 @@ msgid "" "Therefore, unless the application is strictly performing overwrites of " "already-instantiated disk blocks, there are no guarantees that the data will " "be available after a crash. There is no user interface to know if a write " -"is purely an overwrite. On file systems using copy-on-write semantics " -"(e.g., I) an overwrite of existing allocated blocks is impossible. " -"When writing into preallocated space, many file systems also require calls " -"into the block allocator, which this system call does not sync out to disk. " -"This system call does not flush disk write caches and thus does not provide " -"any data integrity on systems with volatile disk write caches." +"is purely an overwrite. On filesystems using copy-on-write semantics (e.g., " +"I) an overwrite of existing allocated blocks is impossible. When " +"writing into preallocated space, many filesystems also require calls into " +"the block allocator, which this system call does not sync out to disk. This " +"system call does not flush disk write caches and thus does not provide any " +"data integrity on systems with volatile disk write caches." msgstr "" #. type: SS @@ -7632,7 +8581,7 @@ msgid "Out of disk space." msgstr "" #. FIXME . (bug?) Actually, how can 'fd' refer to a symbolic link (S_ISLNK)? -#. (In userspace at least) it isn't possible to obtain a file descriptor +#. (In user space at least) it isn't possible to obtain a file descriptor #. for a symbolic link. #. type: Plain text #: build/C/man2/sync_file_range.2:177 @@ -7655,18 +8604,18 @@ msgstr "" #. See kernel commit edd5cd4a9424f22b0fa08bef5e299d41befd5622 #. type: Plain text -#: build/C/man2/sync_file_range.2:196 +#: build/C/man2/sync_file_range.2:200 msgid "" "Some architectures (e.g., PowerPC, ARM) need 64-bit arguments to be aligned " "in a suitable pair of registers. On such architectures, the call signature " -"of B() is flawed, since it forces a register to be wasted " -"as padding between the I and I arguments. Therefore, these " -"architectures define a different system call that orders the arguments " -"suitably:" +"of B() shown in the SYNOPSIS would force a register to be " +"wasted as padding between the I and I arguments. (See " +"B(2) for details.) Therefore, these architectures define a " +"different system call that orders the arguments suitably:" msgstr "" #. type: Plain text -#: build/C/man2/sync_file_range.2:201 +#: build/C/man2/sync_file_range.2:205 #, no-wrap msgid "" "BIB<, unsigned int >IB<,>\n" @@ -7674,14 +8623,14 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/sync_file_range.2:206 +#: build/C/man2/sync_file_range.2:210 msgid "" "The behavior of this system call is otherwise exactly the same as " "B()." msgstr "" #. type: Plain text -#: build/C/man2/sync_file_range.2:217 +#: build/C/man2/sync_file_range.2:221 msgid "" "A system call with this signature first appeared on the ARM architecture in " "Linux 2.6.20, with the name B(). It was renamed in " @@ -7691,6 +8640,6 @@ msgid "" msgstr "" #. type: Plain text -#: build/C/man2/sync_file_range.2:222 +#: build/C/man2/sync_file_range.2:226 msgid "B(2), B(2), B(2), B(2)" msgstr ""