1. 11 Nov, 2015 13 commits
  2. 09 Jan, 2014 2 commits
    • Mark Wielaard's avatar
      Add support for using elfutils as unwinder. · dfefa9f0
      Mark Wielaard authored
      This adds support for using elfutils as unwinder with -w. Since elfutils
      0.158 elfutils contains a simple unwinder interface that matches nicely
      on the ltrace backtrace support.
      
      The code reuses the libunwind infrastructure already in ltrace where
      possible (by defining HAVE_UNWINDER which is 1 if either libunwind or
      elfutils is used). It also reuses the ltrace proc_add_library callback
      to keep track of the ELF files mapped for the unwinder.
      
      The current implementation matches the output as if libunwind was used.
      But elfutils can also provide some more information since it can lookup
      the DWARF debuginfo. So if the source info of an address can be found
      through elfutils the backtrace will also include this as an additional
      output line per frame.
      dfefa9f0
    • Petr Machata's avatar
      Type proc_each_breakpoint properly · 6bcc092d
      Petr Machata authored
      6bcc092d
  3. 05 Jan, 2014 1 commit
  4. 22 Oct, 2013 1 commit
  5. 19 Mar, 2013 3 commits
    • Petr Machata's avatar
      The same work needs to be done on attach as when _start is hit · df2c88ce
      Petr Machata authored
      - Extract the logic to a separate function, called from open_pid and
        entry_breakpoint_on_hit.
      
      - Since there is no other way to get on dyn_addr in open_pid anyway,
        simply look for the main library, and read it there.  That means we
        don't need to track that information at entry_breakpoint anymore,
        and we can get rid of struct entry_breakpoint.
      df2c88ce
    • Petr Machata's avatar
      Use CBS_STOP_IF instead of hand-coding the same · 7725d4b1
      Petr Machata authored
      - In cb_breakpoint_for_symbol, we would need CBS_FAIL_IF.  But
        CBS_FAIL isn't properly handled anywhere.  The iterator client user
        must provide alternate means of signalling errors anyway (e.g. a
        flag passed in data) anyway.  So convert this to CBS_STOP_IF, the
        caller already assumes all stops are failures.
      7725d4b1
    • Petr Machata's avatar
      open_one_pid doesn't return boolean, but <0 on error · 8be68ff4
      Petr Machata authored
      - This compiles down to the exact same code, but we want to be clear
        about the calling convention.
      8be68ff4
  6. 12 Mar, 2013 1 commit
    • Petr Machata's avatar
      Fix compilation · a2c270e8
      Petr Machata authored
      - GCC points out that the constant in dict.c that we use
        for computing string hashes is not implicitly unsigned.
      
      - When building without unwinding support, we can't access
        ifdef'd-out fields.  I remember having writted it this way
        to increase exposure of the error handling code for syntax
        checks, but it can't work.
      a2c270e8
  7. 11 Mar, 2013 2 commits
  8. 08 Mar, 2013 9 commits
  9. 15 Jan, 2013 1 commit
  10. 17 Dec, 2012 1 commit
    • Petr Machata's avatar
      struct Process becomes struct process · 929bd57c
      Petr Machata authored
      This is for consistency with other structures, and ultimately with
      Linux coding style.  The typedef ("Process") was dropped as well for
      this reason.
      
      This opportunity was used to fix coding style around the impacted
      lines.
      929bd57c
  11. 12 Nov, 2012 1 commit
  12. 03 Nov, 2012 1 commit
  13. 31 Oct, 2012 2 commits
  14. 27 Oct, 2012 2 commits