Fix dynamic linker issue with bind-now
Commit Message
Fix the bind-now case when DT_REL and DT_JMPREL sections are separate
and there is a gap between them.
---
elf/dynamic-link.h | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
@@ -133,7 +133,9 @@ elf_machine_lazy_rel (struct link_map *map,
\
if (ranges[0].start + ranges[0].size == (start + size)) \
ranges[0].size -= size; \
- if (! ELF_DURING_STARTUP && ((do_lazy) || ranges[0].size == 0)) \
+ if (! ELF_DURING_STARTUP \
+ && ((do_lazy) || ranges[0].size == 0 || \
+ ranges[0].start + ranges[0].size != start)) \
{ \
ranges[1].start = start; \
ranges[1].size = size; \