This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[COMMITTED PATCH] Clean up _dl_pagesize initialization.
- From: Roland McGrath <roland at hack dot frob dot com>
- To: "GNU C. Library" <libc-alpha at sourceware dot org>
- Date: Fri, 15 Mar 2013 14:36:11 -0700 (PDT)
- Subject: [COMMITTED PATCH] Clean up _dl_pagesize initialization.
* elf/dl-support.c (_dl_aux_init): Ignore zero value for AT_PAGESZ.
(_dl_non_dynamic_init): Don't set _dl_pagesize; it will never be
zero since it's initialized to EXEC_PAGESIZE.
--- a/elf/dl-support.c
+++ b/elf/dl-support.c
@@ -198,7 +198,8 @@ _dl_aux_init (ElfW(auxv_t) *av)
switch (av->a_type)
{
case AT_PAGESZ:
- GLRO(dl_pagesize) = av->a_un.a_val;
+ if (av->a_un.a_val != 0)
+ GLRO(dl_pagesize) = av->a_un.a_val;
break;
case AT_CLKTCK:
GLRO(dl_clktck) = av->a_un.a_val;
@@ -266,9 +267,6 @@ _dl_non_dynamic_init (void)
if (HP_TIMING_AVAIL)
HP_TIMING_NOW (_dl_cpuclock_offset);
- if (!_dl_pagesize)
- _dl_pagesize = __getpagesize ();
-
_dl_verbose = *(getenv ("LD_WARN") ?: "") == '\0' ? 0 : 1;
/* Set up the data structures for the system-supplied DSO early,