Set the dynamic field in the link map for the linker itself.
Otherwise gdb will print a spurious warning each time gdb is used: warning: .dynamic section for "/system/bin/linker" is not at the expected address (wrong library or version mismatch?) BUG:6946614 Change-Id: Ib21b8db0615751189c1601140deb43bc089289b6
This commit is contained in:
parent
709bb0f79c
commit
06f0e74a2b
@ -1860,6 +1860,17 @@ sanitize:
|
||||
strlcpy((char*) linker_soinfo.name, "/system/bin/linker", sizeof linker_soinfo.name);
|
||||
linker_soinfo.flags = 0;
|
||||
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);
|
||||
|
||||
/* extract information passed from the kernel */
|
||||
|
Loading…
x
Reference in New Issue
Block a user