History log of /external/libunwind/src/ptrace/_UPT_get_proc_name.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ae38b20031a02d3f6f56a8315c1f097ae5293c56 04-May-2015 Christopher Ferris <cferris@google.com> Implement method to read elf data from memory.

I rewrote the entirety of elfxx.h/elfxx.c to support this.

For the rewrite, I modified the way that the symbol tables are searched.
The searched every single entry in the symbol table, and all symbol tables.
The new method finds the first entry that actually has a name and stops.

I also added some quick checks to make sure that a malformed elf would
not cause a crash when reading the symbol names from the symbol tables.

I had to implement the functionality of dwarf_find_unwind_table to handle
reading from memory, instead of from a file. I didn't implement debug frame
support since that likelihood of that appearing in memory seems low.

I also modified the dwarf_find_unwind_table to remove an abort and just
fail if that particular path is encountered. In addition, I added a quick
check to make sure that a malformed dynamic section doesn't cause a crash.

Bug: 19517541

Change-Id: I6075d87035dca41fa5e5dfcbe287a680a7671836
/external/libunwind/src/ptrace/_UPT_get_proc_name.c
e6b9f350f78ecd9ef3b8a3e721f9435c94fc2562 22-Aug-2007 David Mosberger-Tang <davidm@panda.mostang.com> Introduce a tdep_get_func_addr_hook() in the ELF lookup_symbol()
routine and add address-space argument. This is needed because on
PPC64, a the function-name symbol refers to a function descriptor
(unlike, for example, on ia64, where the @fptr() operator is needed to
refer to a function descriptor). Thus, in order to look up the name
of a function, we need to dereference the function descriptor. To
make matters more "interesting", the function descriptors are normally
resolved by the dynamic linker, so we can't get their values from the
ELF file. Instead, we have to read them from the running image, hence
the need for the address-space argument.
/external/libunwind/src/ptrace/_UPT_get_proc_name.c
247ee6d4b074f0e175cc5345b9dd7270b1822fe8 30-Jan-2004 hp.com!davidm <hp.com!davidm> Rename: src/_UPT_get_proc_name.c -> src/ptrace/_UPT_get_proc_name.c

(Logical change 1.162)
/external/libunwind/src/ptrace/_UPT_get_proc_name.c
b88369b8314dc8e8fe617184b07527fb34b66f22 30-Jan-2004 hp.com!davidm <hp.com!davidm> Initial revision
/external/libunwind/src/ptrace/_UPT_get_proc_name.c