From 78d16d09d8b8b4c29d566d45eaffd6bd7d2b7593 Mon Sep 17 00:00:00 2001 From: Andreas Jaeger Date: Wed, 25 Jul 2001 06:36:52 +0000 Subject: (__elf_preferred_address): Prefer gaps below main executable. --- sysdeps/powerpc/dl-machine.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sysdeps/powerpc/dl-machine.c b/sysdeps/powerpc/dl-machine.c index 0fdf2a4582..c9c4fe00d5 100644 --- a/sysdeps/powerpc/dl-machine.c +++ b/sysdeps/powerpc/dl-machine.c @@ -119,7 +119,11 @@ __elf_preferred_address(struct link_map *loader, size_t maplength, mapend = l->l_map_end | (_dl_pagesize - 1); assert (mapend > mapstart); - if ((mapend >= high || l == _dl_loaded) && high >= mapstart) + /* Prefer gaps below the main executable, note that l == + _dl_loaded does not work for static binaries loading + e.g. libnss_*.so. */ + if ((mapend >= high || l->l_type == lt_executable) + && high >= mapstart) high = mapstart; else if (mapend >= low && low >= mapstart) low = mapend; -- cgit v1.2.3