Skip to content

@anakryiko anakryiko released this Dec 9, 2019 · 73 commits to master since this release

New features/APIs:

  • new extensible bpf_object__open_{file,mem} APIs and DECLARE_LIBBPF_OPTS() macro to go with them;
  • bpf_helpers.h, bpf_endian.h, and bpf_tracing.h are now distributed with libbpf;
  • BPF CO-RE: added field size, field existence, and bitfield relocation support;
  • BPF CO-RE: BPF_CORE_READ(), bpf_core_field_exists(), bpf_core_field_size() and other BPF CO-RE related helpers available through bpf_core_read.h header;
  • bpf_object__open() API now auto-detects program type from its section name;
  • BPF_PROG_TRACING programs support (incuding BTF-typed raw tracepoints, fentry/fexit programs);
  • mmap() support for BPF global variables;
  • declarative map pinning support added;
  • probe_read_{user,kernel}[_str]() BPF helpers added;
  • bpf_get_link_xdp_info() function to get more XDP information added;
  • a bunch of other AF_XDP changes;

Usability improvements:

  • no need for int version SEC('version') = 1; anymore;
  • raw_tp/tp and uprobe/uretprobe section prefixes added;
  • new bpf_program__get_{type,expected_attach_type} getters;
  • preserve error code on program load failure;

Fixes (most notable ones):

  • btf_dump padding handling;
  • bpf_object__name() returning name, not path;
  • ELF section handling off-by-one bug fix;
  • mem leak/double free fix in BPF program relocation code;
Assets 2

@anakryiko anakryiko released this Oct 2, 2019 · 177 commits to master since this release


  • bpf_btf_get_next_id() API to iterate over system's BTF objects;
  • libbpf_set_print() now returns previously set print callback;
  • libbpf versioning, build, and packaging improvements;
  • convenience helpers for working with BTF types;
  • experimental BPF CO-RE relocation support;
  • various AF_XDP fixes and enhancements;
  • lots of bug fixes and small improvements all around the library from many contributors.

N.B. This is a first release of libbpf that uses symbol versioning. Please let us know if you encounter any issue because of that.

Assets 2

@anakryiko anakryiko released this Oct 1, 2019 · 239 commits to master since this release


  • BTF-defined maps;
  • tracing attachment APIs and bpf_link abstraction;
  • perf buffer API;
  • BTF-to-C conversion API;
  • btf__parse_elf API for loading .BTF from ELF files;
  • libbpf_num_possible_cpus() added;
  • passing through prog_flags through bpf_object__open;
  • new attach types detection added;
  • various bug fixes, code clean up, etc;
Assets 2

@anakryiko anakryiko released this May 23, 2019 · 314 commits to master since this release

First tagged release

Assets 2
You can’t perform that action at this time.