about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--locale/programs/locarchive.c7
2 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index a038c92d3e..1daa62ffbc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2013-10-03  Joseph Myers  <joseph@codesourcery.com>
 
+	* locale/programs/locarchive.c (add_locale): Use constant 4096 for
+	page size instead of calling getpagesize.
+
 	* locale/localeinfo.h (LOCFILE_ALIGN): New macro.
 	(LOCFILE_ALIGN_MASK): Likewise.
 	(LOCFILE_ALIGN_UP): Likewise.
diff --git a/locale/programs/locarchive.c b/locale/programs/locarchive.c
index 13dba0fb26..e2a30b5682 100644
--- a/locale/programs/locarchive.c
+++ b/locale/programs/locarchive.c
@@ -838,7 +838,12 @@ add_locale (struct locarhandle *ah,
   off64_t lastoffset;
   char *ptr;
   struct locale_category_data *size_order[__LC_LAST];
-  const size_t pagesz = getpagesize ();
+  /* Page size alignment is a minor optimization for locality; use a
+     common value here rather than making the localedef output depend
+     on the page size of the system on which localedef is run.  See
+     <https://sourceware.org/glibc/wiki/Development_Todo/Master#Locale_archive_alignment>
+     for more discussion.  */
+  const size_t pagesz = 4096;
   int small_mask;
 
   head = ah->addr;