about summary refs log tree commit diff
path: root/elf/dl-support.c
diff options
context:
space:
mode:
authorSergey Bugaev <bugaevc@gmail.com>2024-03-23 20:32:44 +0300
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2024-03-23 22:47:26 +0100
commit49aa652db810ebdca3a662ebd5b0468bd08ec688 (patch)
tree64aa85312a1742e1754cfece8681bee327c59cc9 /elf/dl-support.c
parent4648bfbbde5466929d24013478697cbdec847b46 (diff)
downloadglibc-49aa652db810ebdca3a662ebd5b0468bd08ec688.tar.gz
glibc-49aa652db810ebdca3a662ebd5b0468bd08ec688.tar.xz
glibc-49aa652db810ebdca3a662ebd5b0468bd08ec688.zip
Allow glibc to be compiled without EXEC_PAGESIZE
We would like to avoid statically defining any specific page size on
aarch64-gnu, and instead make sure that everything uses the dynamic
page size, available via vm_page_size and GLRO(dl_pagesize).

There are currently a few places in glibc that require EXEC_PAGESIZE
to be defined. Per Roland's suggestion [0], drop the static
GLRO(dl_pagesize) initializers (for now, only if EXEC_PAGESIZE is not
defined), and don't require EXEC_PAGESIZE definition for libio to
enable mmap usage.

[0]: https://mail.gnu.org/archive/html/bug-hurd/2011-10/msg00035.html

Signed-off-by: Sergey Bugaev <bugaevc@gmail.com>
Message-ID: <20240323173301.151066-4-bugaevc@gmail.com>
Diffstat (limited to 'elf/dl-support.c')
-rw-r--r--elf/dl-support.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/elf/dl-support.c b/elf/dl-support.c
index 451932dd03..cb0bbd213f 100644
--- a/elf/dl-support.c
+++ b/elf/dl-support.c
@@ -135,7 +135,11 @@ void *_dl_random;
 #include <dl-procruntime.c>
 #include <dl-procinfo.c>
 
-size_t _dl_pagesize = EXEC_PAGESIZE;
+size_t _dl_pagesize
+#ifdef EXEC_PAGESIZE
+  = EXEC_PAGESIZE
+#endif
+;
 
 size_t _dl_minsigstacksize = CONSTANT_MINSIGSTKSZ;