1. 24 Aug, 2016 3 commits
    • Mark Drayton's avatar
    • Brenden Blanco's avatar
      Merge pull request #670 from iamkafai/perf_submit_skb · 96483d48
      Brenden Blanco authored
      Add perf_submit_skb
      96483d48
    • Martin KaFai Lau's avatar
      Add perf_submit_skb · bdad3840
      Martin KaFai Lau authored
      For BPF_PROG_TYPE_SCHED_CLS/ACT, the upstream kernel has recently added a
      feature to efficiently output skb + meta data:
      commit 555c8a8623a3 ("bpf: avoid stack copy and use skb ctx for event output")
      
      This patch adds perf_submit_skb to BPF_PERF_OUTPUT macro.  It takes
      an extra u32 argument.  perf_submit_skb will then be expanded to
      bpf_perf_event_output properly to consider the newly added
      u32 argument as the skb's len.
      
      Other than the above described changes, perf_submit_skb is almost
      a carbon copy of the perf_submit except the removal of the 'string name'
      variable since I cannot find a specific use of it.
      
      Note that the 3rd param type of bpf_perf_event_output has also been
      changed from u32 to u64.
      
      Added a sample program tc_perf_event.py.  Here is how the output
      looks like:
      [root@arch-fb-vm1 networking]# ./tc_perf_event.py
      Try: "ping -6 ff02::1%me"
      
      CPU SRC IP                           DST IP       Magic
      0   fe80::982f:5dff:fec1:e52b        ff02::1      0xfaceb00c
      0   fe80::982f:5dff:fec1:e52b        ff02::1      0xfaceb00c
      0   fe80::982f:5dff:fec1:e52b        ff02::1      0xfaceb00c
      1   fe80::982f:5dff:fec1:e52b        ff02::1      0xfaceb00c
      1   fe80::982f:5dff:fec1:e52b        ff02::1      0xfaceb00c
      1   fe80::982f:5dff:fec1:e52b        ff02::1      0xfaceb00c
      bdad3840
  2. 21 Aug, 2016 1 commit
  3. 20 Aug, 2016 2 commits
  4. 19 Aug, 2016 2 commits
  5. 18 Aug, 2016 2 commits
  6. 17 Aug, 2016 1 commit
  7. 16 Aug, 2016 1 commit
  8. 15 Aug, 2016 2 commits
  9. 14 Aug, 2016 1 commit
  10. 13 Aug, 2016 1 commit
  11. 11 Aug, 2016 6 commits
  12. 09 Aug, 2016 1 commit
  13. 06 Aug, 2016 2 commits
  14. 05 Aug, 2016 4 commits
  15. 03 Aug, 2016 1 commit
  16. 02 Aug, 2016 3 commits
  17. 01 Aug, 2016 5 commits
  18. 31 Jul, 2016 2 commits
    • Teng Qin's avatar
      Fix tools still referencing ProcUtils (#625) · 9b04a6ff
      Teng Qin authored
      Recent USDT change removed `procstat.py`, which the `argdist` and `trace` tools are still referencing. This diff moves the only method (`which`) they are using into the `BPF` class.
      
      Also, make `BPF.find_library` not to call `decode()` on `None`.
      9b04a6ff
    • Teng Qin's avatar
      Try to demangle C++ symbols (#638) · 4ba52382
      Teng Qin authored
      Added a field `demangle_name` in the `bcc_symbol` struct. Calculate its value whenever possible. For C++ programs, this would make outputted stack traces look nicer.
      Example: http://pastebin.com/LqT0nP67
      4ba52382