Project

General

Profile

Feature #474

Make lttng-ust aware of shared object base addresses

Added by Paul Woegerer about 7 years ago. Updated over 4 years ago.

Status:
Resolved
Priority:
Normal
Target version:
Start date:
03/14/2013
Due date:
% Done:

0%

Estimated time:

Description

Using the glibc function dl_iterate_phdr we are able to iterate the currently opened shared objects from within the traced exe.

This allows us to resolve:

  • Tracepoint call site address to specific line number in the sources (if the tp was emitted from a shared object).
  • Compute the absolute vaddress to install uprobes in shared objects.

To also record any changes of the currently opened shared objects during the application runtime we could use the existing ld-audit interface.
(we would need to implement the hooks la_objopen() and la_objclose() to keep informed about shared object loading and unloading)

References:
man dl_iterate_phdr
man rtld-audit


Files

base_address_recording_prototype.pdf (28.6 KB) base_address_recording_prototype.pdf Paul Woegerer, 09/16/2013 10:44 AM

Also available in: Atom PDF