This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: [PATCH] Fix dynamic linker issue with bind-now


Do you any additional data/feedback to proceed with this issue?

Let me know.

Thank you.

Regards,
Petar

-----Original Message-----
From: Petar Jovanovic [mailto:petar.jovanovic@rt-rk.com] 
Sent: Wednesday, September 10, 2014 4:44 PM
To: 'libc-alpha@sourceware.org'
Cc: 'petar.jovanovic@imgtec.com'; 'davem@davemloft.net'
Subject: RE: [PATCH] Fix dynamic linker issue with bind-now

ping

-----Original Message-----
From: Petar Jovanovic [mailto:petar.jovanovic@rt-rk.com]
Sent: Wednesday, August 20, 2014 2:10 AM
To: libc-alpha@sourceware.org
Cc: petar.jovanovic@imgtec.com; davem@davemloft.net; Petar Jovanovic
Subject: [PATCH] Fix dynamic linker issue with bind-now

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(-)

diff --git a/elf/dynamic-link.h b/elf/dynamic-link.h index 7b3e295..d5dea8e
100644
--- a/elf/dynamic-link.h
+++ b/elf/dynamic-link.h
@@ -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;
\
--
1.7.9.5


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]