1. 15 Jan, 2017 2 commits
  2. 13 Jan, 2017 1 commit
  3. 09 Jan, 2017 1 commit
  4. 07 Jan, 2017 1 commit
    • Rolf Neugebauer's avatar
      Add -fno-stack-protector to CFLAGS · 5dfd199a
      Rolf Neugebauer authored
      
      When compiling ebpf programs on Alpine Linux the compiler throws the following
      error:
      
      LLVM ERROR: Cannot select: 0x56049b79dcb0: ch,glue = BPFISD::CALL 0x56049a93ad60, TargetExternalSymbol:i64'__stack_chk_fail'
        0x56049b391500: i64 = TargetExternalSymbol'__stack_chk_fail'
          In function: waker
      
      Disabling the stack protector explicitly with '-fno-stack-protector'
      fixes this error.
      
      clang version 3.8.1 (tags/RELEASE_381/final)
      Target: x86_64-alpine-linux-musl
      Thread model: posix
      InstalledDir: /usr/bin
      Signed-off-by: default avatarRolf Neugebauer <rolf.neugebauer@docker.com>
      5dfd199a
  5. 05 Jan, 2017 1 commit
    • Brenden Blanco's avatar
      Fixes for LLVM 4.0 and python3 · 2d862046
      Brenden Blanco authored
      
      Avoid conflicting [no]inline attributes in function annotation. This was
      probably always there but now 4.0 is treating this as an error.
      Also, explicitly inline several functions in helpers.h.
      
      Turn off unwind tables in the flags passed to clang. This was generating
      calls to the elf relocator, which doesn't work for the BPF target. It is
      unclear which change in LLVM 4.0 altered this behavior.
      
      On python3, handle byte strings in the usual way for supporting
      backwards compatibility.
      Signed-off-by: default avatarBrenden Blanco <bblanco@gmail.com>
      2d862046
  6. 02 Jan, 2017 1 commit
  7. 29 Dec, 2016 2 commits
  8. 20 Dec, 2016 3 commits
  9. 18 Dec, 2016 1 commit
  10. 16 Dec, 2016 2 commits
  11. 09 Dec, 2016 3 commits
  12. 08 Dec, 2016 1 commit
  13. 06 Dec, 2016 1 commit
    • Zhiyi Sun's avatar
      Add support for aarch64 · 8e434b79
      Zhiyi Sun authored
      
      ABI for aarch64: register x0-x7 are used for parameter and result. In
      bcc, there are 6 parameter registers are defined. So use x0-x5 as
      parameter. frame pointer, link register, stack pointer and pc are added
      in PT_REGS_xx according to arm64 architecture.
      
      syscall number of bpf for aarch64 are defined in Kernel
      header uapi/asm-generic/unistd.h.
      Signed-off-by: default avatarZhiyi Sun <zhiyisun@gmail.com>
      8e434b79
  14. 03 Dec, 2016 1 commit
  15. 01 Dec, 2016 1 commit
  16. 30 Nov, 2016 3 commits
  17. 29 Nov, 2016 5 commits
  18. 24 Nov, 2016 3 commits
  19. 09 Nov, 2016 2 commits
    • Sasha Goldshtein's avatar
      cc, python: Clean up BPF module and tables · c085977e
      Sasha Goldshtein authored
      When the `BPFModule` object is destroyed, shared tables
      were closed, but non-shared tables were not. Add `close`
      call to close non-shared tables in `~BPFModule`.
      
      Make sure the `BPF.cleanup` function in the Python module
      calls `bpf_module_destroy` to clean up the module. Otherwise,
      we have hanging table fds that aren't destroyed.
      
      Fixes #806. This would have been an issue for any tool
      that repeatedly runs a BPF program with new maps. It's just
      that most tools we have haven't exhibited this behavior.
      c085977e
    • Mark Drayton's avatar
  20. 08 Nov, 2016 1 commit
    • Marco Leogrande's avatar
      Fix warnings covered by -Wdelete-non-virtual-dtor · 899520c3
      Marco Leogrande authored
      
      The warnings were:
      
       src/cc/bcc_syms.cc: In function ‘void bcc_free_symcache(void*, int)’:
       src/cc/bcc_syms.cc:217:40: warning: deleting object of polymorphic class type ‘KSyms’
                                  which has non-virtual destructor might cause undefined behaviour
                                  [-Wdelete-non-virtual-dtor]
           delete static_cast<KSyms*>(symcache);
                                              ^
       src/cc/bcc_syms.cc:219:43: warning: deleting object of polymorphic class type ‘ProcSyms’
                                  which has non-virtual destructor might cause undefined behaviour
                                  [-Wdelete-non-virtual-dtor]
           delete static_cast<ProcSyms*>(symcache);
                                                 ^
      
      Fix the warnings by defining a virtual destructor for the base class SymbolCache.
      Signed-off-by: default avatarMarco Leogrande <marcol@plumgrid.com>
      899520c3
  21. 31 Oct, 2016 1 commit
  22. 30 Oct, 2016 2 commits
  23. 20 Oct, 2016 1 commit