[git commit] ldso: fix building for FDPIC systems
Mike Frysinger
vapier at gentoo.org
Thu Jul 23 09:41:35 UTC 2009
commit: http://git.uclibc.org/uClibc/commit/?id=3acdf4fa294ca935d384762da91b3a37dabb59ca
branch: http://git.uclibc.org/uClibc/commit/?id=refs/heads/master
The force shareable code missed a spot of using the DL_RELOC_ADDR()
indirection thus leading to invalid operands:
ldso/ldso/ldso.c: In function '_dl_get_ready_to_run':
ldso/ldso/ldso.c:409: error: invalid operands to binary +
(have 'Elf32_Addr' and 'struct elf32_fdpic_loadaddr')
Signed-off-by: Mike Frysinger <vapier at gentoo.org>
---
ldso/ldso/ldso.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c
index 19a9fae..786775a 100644
--- a/ldso/ldso/ldso.c
+++ b/ldso/ldso/ldso.c
@@ -406,7 +406,7 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr,
for (i = 0; i < auxvt[AT_PHNUM].a_un.a_val; i++, ppnt++) {
if (ppnt->p_type == PT_LOAD && !(ppnt->p_flags & PF_W))
_dl_mprotect((void *) (DL_RELOC_ADDR(app_tpnt->loadaddr, ppnt->p_vaddr) & PAGE_ALIGN),
- ((ppnt->p_vaddr + app_tpnt->loadaddr) & ADDR_ALIGN) +
+ (DL_RELOC_ADDR(app_tpnt->loadaddr, ppnt->p_vaddr) & ADDR_ALIGN) +
(unsigned long) ppnt->p_filesz,
PROT_READ | PROT_WRITE | PROT_EXEC);
}
--
1.6.3.3
More information about the uClibc-cvs
mailing list