summaryrefslogtreecommitdiff
path: root/locale
diff options
context:
space:
mode:
authorAurelien Jarno <aurelien@aurel32.net>2010-02-08 14:58:31 +0100
committerAndreas Schwab <schwab@redhat.com>2010-03-18 17:09:13 +0100
commita4889edbf47c0448479e03fb2d27c390d4cc825b (patch)
tree2d1d2c18a3a559fb60fcfe7219a423c0aaaea2ba /locale
parent2f95f8a2033ad22fa3e2eb2be8a89615a1339830 (diff)
Use shared mapping to reserve memory when creating locale archive
Diffstat (limited to 'locale')
-rw-r--r--locale/programs/locarchive.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/locale/programs/locarchive.c b/locale/programs/locarchive.c
index a58505852d..4335369d61 100644
--- a/locale/programs/locarchive.c
+++ b/locale/programs/locarchive.c
@@ -134,7 +134,7 @@ create_archive (const char *archivefname, struct locarhandle *ah)
size_t reserved = RESERVE_MMAP_SIZE;
int xflags = 0;
if (total < reserved
- && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON,
+ && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON,
-1, 0)) != MAP_FAILED))
xflags = MAP_FIXED;
else
@@ -396,7 +396,7 @@ enlarge_archive (struct locarhandle *ah, const struct locarhead *head)
size_t reserved = RESERVE_MMAP_SIZE;
int xflags = 0;
if (total < reserved
- && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON,
+ && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON,
-1, 0)) != MAP_FAILED))
xflags = MAP_FIXED;
else
@@ -614,7 +614,7 @@ open_archive (struct locarhandle *ah, bool readonly)
int xflags = 0;
void *p;
if (st.st_size < reserved
- && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON,
+ && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON,
-1, 0)) != MAP_FAILED))
xflags = MAP_FIXED;
else