From 6d6f3a5c26adcf6b105edfb4b53e97ceee81944c Mon Sep 17 00:00:00 2001 From: Joakim Tjernlund Date: Tue, 17 Aug 2004 13:37:54 +0000 Subject: Let ldso decide if it should relocate itselft a second time. This is needed if ldso should use libcs malloc whenever possible. Fix RTLD_LAZY propagation to RTLD_NOW relocation when requested by libdl. --- ldso/ldso/powerpc/elfinterp.c | 9 --------- 1 file changed, 9 deletions(-) (limited to 'ldso/ldso/powerpc') diff --git a/ldso/ldso/powerpc/elfinterp.c b/ldso/ldso/powerpc/elfinterp.c index 0cecf7dc8..103a0fb56 100644 --- a/ldso/ldso/powerpc/elfinterp.c +++ b/ldso/ldso/powerpc/elfinterp.c @@ -396,10 +396,6 @@ void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt, (void) type; num_plt_entries = rel_size / sizeof(ELF_RELOC); - /* When the dynamic linker bootstrapped itself, it resolved some symbols. - Make sure we do not do them again */ - if (tpnt->libtype == program_interpreter) - return; rel_offset_words = PLT_DATA_START_WORDS(num_plt_entries); plt = (Elf32_Word *)(tpnt->dynamic_info[DT_PLTGOT] + tpnt->loadaddr); @@ -443,11 +439,6 @@ _dl_parse(struct elf_resolve *tpnt, struct dyn_elf *scope, ELF_RELOC *rpnt; int symtab_index; - /* When the dynamic linker bootstrapped itself, it resolved some symbols. - Make sure we do not do them again */ - if (tpnt->libtype == program_interpreter) - return 0; - /* Now parse the relocation information */ rpnt = (ELF_RELOC *)(intptr_t) (rel_addr + tpnt->loadaddr); rel_size = rel_size / sizeof(ELF_RELOC); -- cgit v1.2.3