gdb/gdbserver/

* linux-low.c (get_dynamic): Don't warn when PT_PHDR isn't found.
	New comment why.
This commit is contained in:
Jan Kratochvil 2012-03-05 17:09:37 +00:00
parent 275418ae46
commit e237a7e2c5
2 changed files with 16 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2012-03-05 Pedro Alves <palves@redhat.com>
Jan Kratochvil <jan.kratochvil@redhat.com>
* linux-low.c (get_dynamic): Don't warn when PT_PHDR isn't found.
New comment why.
2012-03-03 Yao Qi <yao@codesourcery.com>
* tracepoint.c (tracepoint_look_up_symbols): Update call to

View File

@ -5250,7 +5250,16 @@ get_dynamic (const int pid, const int is_elf64)
if (relocation == -1)
{
warning ("Unexpected missing PT_PHDR");
/* PT_PHDR is optional, but necessary for PIE in general. Fortunately
any real world executables, including PIE executables, have always
PT_PHDR present. PT_PHDR is not present in some shared libraries or
in fpc (Free Pascal 2.4) binaries but neither of those have a need for
or present DT_DEBUG anyway (fpc binaries are statically linked).
Therefore if there exists DT_DEBUG there is always also PT_PHDR.
GDB could find RELOCATION also from AT_ENTRY - e_entry. */
return 0;
}