mirror of git://sourceware.org/git/glibc.git
(__elf_preferred_address): Prefer gaps below main executable.
This commit is contained in:
parent
f369623d6d
commit
78d16d09d8
|
|
@ -119,7 +119,11 @@ __elf_preferred_address(struct link_map *loader, size_t maplength,
|
||||||
mapend = l->l_map_end | (_dl_pagesize - 1);
|
mapend = l->l_map_end | (_dl_pagesize - 1);
|
||||||
assert (mapend > mapstart);
|
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;
|
high = mapstart;
|
||||||
else if (mapend >= low && low >= mapstart)
|
else if (mapend >= low && low >= mapstart)
|
||||||
low = mapend;
|
low = mapend;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue