summaryrefslogtreecommitdiff
path: root/ldso/ldso/dl-elf.c
diff options
context:
space:
mode:
Diffstat (limited to 'ldso/ldso/dl-elf.c')
-rw-r--r--ldso/ldso/dl-elf.c17
1 files changed, 2 insertions, 15 deletions
diff --git a/ldso/ldso/dl-elf.c b/ldso/ldso/dl-elf.c
index 80c8fe438..3e4e3482c 100644
--- a/ldso/ldso/dl-elf.c
+++ b/ldso/ldso/dl-elf.c
@@ -741,7 +741,8 @@ int _dl_fixup(struct dyn_elf *rpnt, int now_flag)
tpnt = rpnt->dyn;
#if defined (__SUPPORT_LD_DEBUG__)
- if(_dl_debug) _dl_dprintf(_dl_debug_file,"\nrelocation processing: %s", tpnt->libname);
+ if(_dl_debug && !(tpnt->init_flag & RELOCS_DONE))
+ _dl_dprintf(_dl_debug_file,"\nrelocation processing: %s\n", tpnt->libname);
#endif
if (unlikely(tpnt->dynamic_info[UNSUPPORTED_RELOC_TYPE])) {
@@ -784,20 +785,6 @@ int _dl_fixup(struct dyn_elf *rpnt, int now_flag)
}
}
- if (tpnt->init_flag & COPY_RELOCS_DONE)
- return goof;
- tpnt->init_flag |= COPY_RELOCS_DONE;
- goof += _dl_parse_copy_information(rpnt,
- tpnt->dynamic_info[DT_RELOC_TABLE_ADDR],
- tpnt->dynamic_info[DT_RELOC_TABLE_SIZE]);
-
-#if defined (__SUPPORT_LD_DEBUG__)
- if(_dl_debug) {
- _dl_dprintf(_dl_debug_file,"\nrelocation processing: %s", tpnt->libname);
- _dl_dprintf(_dl_debug_file,"; finished\n\n");
- }
-#endif
-
return goof;
}