am 9eeaa4bd: am 7e3918eb: am 0bf5cf87: Merge "Set the dynamic field in the link map for the linker itself."

* commit '9eeaa4bd17b7131e20ad2e36f1372605e80a1332':
  Set the dynamic field in the link map for the linker itself.
This commit is contained in:
Ben Cheng 2012-08-11 15:18:03 -07:00 committed by Android Git Automerger
commit daedcfc595

View File

@ -1860,6 +1860,17 @@ sanitize:
strlcpy((char*) linker_soinfo.name, "/system/bin/linker", sizeof linker_soinfo.name); strlcpy((char*) linker_soinfo.name, "/system/bin/linker", sizeof linker_soinfo.name);
linker_soinfo.flags = 0; linker_soinfo.flags = 0;
linker_soinfo.base = linker_base; linker_soinfo.base = linker_base;
/*
* Set the dynamic field in the link map otherwise gdb will complain with
* the following:
* warning: .dynamic section for "/system/bin/linker" is not at the
* expected address (wrong library or version mismatch?)
*/
Elf32_Ehdr *elf_hdr = (Elf32_Ehdr *) linker_base;
Elf32_Phdr *phdr =
(Elf32_Phdr *)((unsigned char *) linker_base + elf_hdr->e_phoff);
linker_soinfo.dynamic =
phdr_table_get_dynamic_section(phdr, elf_hdr->e_phnum, linker_base);
insert_soinfo_into_debug_map(&linker_soinfo); insert_soinfo_into_debug_map(&linker_soinfo);
/* extract information passed from the kernel */ /* extract information passed from the kernel */