Skip to content

Tags

Tags give the ability to mark specific points in history as being important
  • v1.24

    de242344 · pahole: Prep 1.24 ·
    BTF encoder:
    
    - Add support to BTF_KIND_ENUM64 to represent enumeration entries
      with more than 32 bits.
    
    - Support multithreaded encoding, in addition to DWARF
      multithreaded loading, speeding up the process.
    
      Selected just like DWARF multithreaded loading, using the
      'pahole -j' option.
    
    - Encode 'char' type as signed.
    
    BTF Loader:
    
    - Add support to BTF_KIND_ENUM64.
    
    pahole:
    
    - Introduce --lang and --lang_exclude to specify the language the
      DWARF compile units were originated from to use or filter.
    
      Use case is to exclude Rust compile units while aspects of the
      DWARF generated for it get sorted out in a way that the kernel
      BPF verifier don't refuse loading the BTF generated from them.
    
    - Introduce --compile to generate compilable code in a similar fashion to:
    
       bpftool btf dump file vmlinux format c > vmlinux.h
    
      As with 'bpftool', this will notice type shadowing, i.e. multiple types
      with the same name and will disambiguate by adding a suffix.
    
    - Don't segfault when processing bogus files.
    
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    
  • debian/1.23-2

    dwarves Debian release 1.23-2
    
  • debian/1.23-1

    dwarves Debian release 1.23-1
    
  • debian/1.22-7

    dwarves Debian release 1.22-7
    
  • debian/1.22-8

    dwarves Debian release 1.22-8
    
  • debian/1.22-6

    4519d683 · Prepare for 1.22-6 ·
    dwarves Debian release 1.22-6
    
  • debian/1.22-5

    c7021be4 · Prepare for 1.22-5 ·
    dwarves Debian release 1.22-5
    
  • debian/1.22-4_bpo11+1

    dwarves Debian release 1.22-4~bpo11+1
    
  • debian/1.22-2_bpo11+1

    dwarves Debian release 1.22-2~bpo11+1
    
  • debian/1.22-4

    dwarves Debian release 1.22-4
    
  • debian/1.22-3

    5d24c512 · Prepare for 1.22-3 ·
    dwarves Debian release 1.22-3
    
  • debian/1.22-2

    178200d2 · Prepare for 1.22-2 ·
    dwarves Debian release 1.22-2
    
  • acmel/1.23

    c2b7b8c2 · pahole: Prep 1.23 ·
    DWARF loader:
    
    - Read DW_TAG_LLVM_annotation tags, associating it with variables, functions,
      types. So far this is only being used by the BTF encoder, but the pretty
      printer should use this as well in a future release, printing these
      attributes when available.
    
    - Initial support for DW_TAG_skeleton_unit, so far just suggest looking up a
      matching .dwo file to be used instead. Automagically doing this is in the
      plans for a future release.
    
    - Fix heap overflow when accessing variable specification.
    
    BTF encoder:
    
    - Support the new BTF type tag attribute, encoding DW_TAG_LLVM_annotation DWARF
      tags as BTF_KIND_TYPE_TAG and BTF_KIND_DECL_TAG.
    
      This allows __attribute__((btf_type_tag("tag1"))) to be used for variables,
      functions, typedefs, so that contextual information can be stored in BTF and
      used by the kernel BPF verifier for more checks.
    
      The --skip_encoding_btf_type_tag option can be used to suppress this.
    
    - Fix handling of percpu symbols on s390.
    
    BTF loader:
    
    - Use cacheline size to infer alignment.
    
    btfdiff:
    
    - Now that the BTF loader infers struct member alingment, and as that is just
      an heuristic, suppress printing the alignment when pretty printing from BTF
      info like is done when printing from DWARF.
    
    pahole:
    
    - Add --skip_missing so that we don't stop when not finding one of the types passed
      to -C.
    
    Pretty printer:
    
    - Fix __attribute__((__aligned__(N)) printing alignment for struct members.
    
    - Fix nested __attribute__(__aligned__(N)) struct printing order, so that
      rebuilding from the printed source circles back to the original source code
      alignment semantics.
    
    Build:
    
    - No need to download libbpf source when using the system library (libbpf-devel).
    
    - Make python optional
    
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    
  • upstream/1.23

    c2b7b8c2 · pahole: Prep 1.23 ·
    DWARF loader:
    
    - Read DW_TAG_LLVM_annotation tags, associating it with variables, functions,
      types. So far this is only being used by the BTF encoder, but the pretty
      printer should use this as well in a future release, printing these
      attributes when available.
    
    - Initial support for DW_TAG_skeleton_unit, so far just suggest looking up a
      matching .dwo file to be used instead. Automagically doing this is in the
      plans for a future release.
    
    - Fix heap overflow when accessing variable specification.
    
    BTF encoder:
    
    - Support the new BTF type tag attribute, encoding DW_TAG_LLVM_annotation DWARF
      tags as BTF_KIND_TYPE_TAG and BTF_KIND_DECL_TAG.
    
      This allows __attribute__((btf_type_tag("tag1"))) to be used for variables,
      functions, typedefs, so that contextual information can be stored in BTF and
      used by the kernel BPF verifier for more checks.
    
      The --skip_encoding_btf_type_tag option can be used to suppress this.
    
    - Fix handling of percpu symbols on s390.
    
    BTF loader:
    
    - Use cacheline size to infer alignment.
    
    btfdiff:
    
    - Now that the BTF loader infers struct member alingment, and as that is just
      an heuristic, suppress printing the alignment when pretty printing from BTF
      info like is done when printing from DWARF.
    
    pahole:
    
    - Add --skip_missing so that we don't stop when not finding one of the types passed
      to -C.
    
    Pretty printer:
    
    - Fix __attribute__((__aligned__(N)) printing alignment for struct members.
    
    - Fix nested __attribute__(__aligned__(N)) struct printing order, so that
      rebuilding from the printed source circles back to the original source code
      alignment semantics.
    
    Build:
    
    - No need to download libbpf source when using the system library (libbpf-devel).
    
    - Make python optional
    
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    
  • upstream/v1.23

    c2b7b8c2 · pahole: Prep 1.23 ·
    DWARF loader:
    
    - Read DW_TAG_LLVM_annotation tags, associating it with variables, functions,
      types. So far this is only being used by the BTF encoder, but the pretty
      printer should use this as well in a future release, printing these
      attributes when available.
    
    - Initial support for DW_TAG_skeleton_unit, so far just suggest looking up a
      matching .dwo file to be used instead. Automagically doing this is in the
      plans for a future release.
    
    - Fix heap overflow when accessing variable specification.
    
    BTF encoder:
    
    - Support the new BTF type tag attribute, encoding DW_TAG_LLVM_annotation DWARF
      tags as BTF_KIND_TYPE_TAG and BTF_KIND_DECL_TAG.
    
      This allows __attribute__((btf_type_tag("tag1"))) to be used for variables,
      functions, typedefs, so that contextual information can be stored in BTF and
      used by the kernel BPF verifier for more checks.
    
      The --skip_encoding_btf_type_tag option can be used to suppress this.
    
    - Fix handling of percpu symbols on s390.
    
    BTF loader:
    
    - Use cacheline size to infer alignment.
    
    btfdiff:
    
    - Now that the BTF loader infers struct member alingment, and as that is just
      an heuristic, suppress printing the alignment when pretty printing from BTF
      info like is done when printing from DWARF.
    
    pahole:
    
    - Add --skip_missing so that we don't stop when not finding one of the types passed
      to -C.
    
    Pretty printer:
    
    - Fix __attribute__((__aligned__(N)) printing alignment for struct members.
    
    - Fix nested __attribute__(__aligned__(N)) struct printing order, so that
      rebuilding from the printed source circles back to the original source code
      alignment semantics.
    
    Build:
    
    - No need to download libbpf source when using the system library (libbpf-devel).
    
    - Make python optional
    
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    
  • v1.23

    c2b7b8c2 · pahole: Prep 1.23 ·
    DWARF loader:
    
    - Read DW_TAG_LLVM_annotation tags, associating it with variables, functions,
      types. So far this is only being used by the BTF encoder, but the pretty
      printer should use this as well in a future release, printing these
      attributes when available.
    
    - Initial support for DW_TAG_skeleton_unit, so far just suggest looking up a
      matching .dwo file to be used instead. Automagically doing this is in the
      plans for a future release.
    
    - Fix heap overflow when accessing variable specification.
    
    BTF encoder:
    
    - Support the new BTF type tag attribute, encoding DW_TAG_LLVM_annotation DWARF
      tags as BTF_KIND_TYPE_TAG and BTF_KIND_DECL_TAG.
    
      This allows __attribute__((btf_type_tag("tag1"))) to be used for variables,
      functions, typedefs, so that contextual information can be stored in BTF and
      used by the kernel BPF verifier for more checks.
    
      The --skip_encoding_btf_type_tag option can be used to suppress this.
    
    - Fix handling of percpu symbols on s390.
    
    BTF loader:
    
    - Use cacheline size to infer alignment.
    
    btfdiff:
    
    - Now that the BTF loader infers struct member alingment, and as that is just
      an heuristic, suppress printing the alignment when pretty printing from BTF
      info like is done when printing from DWARF.
    
    pahole:
    
    - Add --skip_missing so that we don't stop when not finding one of the types passed
      to -C.
    
    Pretty printer:
    
    - Fix __attribute__((__aligned__(N)) printing alignment for struct members.
    
    - Fix nested __attribute__(__aligned__(N)) struct printing order, so that
      rebuilding from the printed source circles back to the original source code
      alignment semantics.
    
    Build:
    
    - No need to download libbpf source when using the system library (libbpf-devel).
    
    - Make python optional
    
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    
  • debian/1.22-1

    832b8e37 · Release 1.22-1 ·
    dwarves Debian release 1.22-1
    
  • acmel/1.22

    f02af255 · pahole: Prep 1.22 ·
    pahole:
    
    - Allow encoding BTF to a separate BTF file (detached) instead of to a new
      ".BTF" ELF section in the file being encoded (vmlinux usually).
    
    - Introduce -j/--jobs option to specify the number of threads to use. Without
      arguments means one thread per CPU. So far used for the DWARF loader, will
      be used as well for the BTF encoder.
    
    - Show all different types with the same name, not just the first one found.
    
    - Introduce sorted type output (--sort), needed with multithreaded DWARF loading,
      to use with things like 'btfdiff' that expects the output from DWARF and BTF
      types to be comparable using 'diff'.
    
    - Stop assuming that reading from stdin means pretty printing as this broke
      pre-existing scripts, introduce a explicit --prettify command line option.
    
    - Improve type resolution for the --header command line option.
    
    - Disable incomplete CTF encoder, this needs to be done using the external
      libctf library.
    
    - Do not consider the ftrace filter when encoding BTF for kernel functions.
    
    - Add --kabi_prefix to avoid deduplication woes when using _RH_KABI_REPLACE(),
    
    - Add --with_flexible_array to show just types with flexible arrays.
    
    DWARF Loader:
    
    - Multithreaded loading, requires elfutils >= 0.178.
    
    - Lock calls to non-thread safe elfutils' libdw functions (dwarf_decl_file()
      and dwarf_decl_line())
    
    - Change hash table size to one that performs better with current typical
      vmlinux files.
    
    - Allow tweaking the hash table size from the command line.
    
    - Stop allocating memory for strings obtained from libdw, just defer freeing
      the Dwfl handler so that references to its strings can be safely kept.
    
    - Use a frontend cache for the latest lookup result.
    
    - Allow ignoring some DWARF tags when loading for encoding BTF, as BTF doesn't
      have equivalents for things like DW_TAG_inline_expansion and DW_TAG_label.
    
    - Allow ignoring some DWARF tag attributes, such as DW_AT_alignment, not used
      when encoding BTF.
    
    - Do not query for non-C attributes when loading a C language CU (compilation unit).
    
    BTF encoder:
    
    - Preparatory work for multithreaded encoding, the focus for 1.23.
    
    btfdiff:
    
    - Support diffing against a detached BTF file, e.g.: 'btfdiff vmlinux vmlinux.btf'
    
    - Support multithreaded DWARF loading, using the new pahole --sort option to have
      the output from both BTF and DWARF sorted and thus comparable via 'diff'.
    
    Build:
    
    - Support building with libc libraries lacking either obstacks or argp, such
      as Alpine Linux's musl libc.
    
    - Support systems without getconf() to obtain the data cacheline size, such
      as musl libc.
    
    - Add a buildcmd.sh for test builds, tested using the same set of containers
      used for testing the Linux kernel perf tools.
    
    - Enable selecting building with a shared libdwarves library or statically.
    
    - Allow to use the libbpf package found in distributions instead of with the
      accompanying libbpf git submodule.
    
    Cleanups:
    
    - Address lots of compiler warnings accumulated by not using -Wextra, it'll
      be added in the next release after allowing not to use it to build libbpf.
    
    - Address covscan report issues.
    
    Documentation:
    
    - Improve the --nr_methods/-m pahole man page entry.
    
    - Clarify that currently --nr_methods doesn't work together witn -C.
    
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    
  • upstream/1.22

    f02af255 · pahole: Prep 1.22 ·
    pahole:
    
    - Allow encoding BTF to a separate BTF file (detached) instead of to a new
      ".BTF" ELF section in the file being encoded (vmlinux usually).
    
    - Introduce -j/--jobs option to specify the number of threads to use. Without
      arguments means one thread per CPU. So far used for the DWARF loader, will
      be used as well for the BTF encoder.
    
    - Show all different types with the same name, not just the first one found.
    
    - Introduce sorted type output (--sort), needed with multithreaded DWARF loading,
      to use with things like 'btfdiff' that expects the output from DWARF and BTF
      types to be comparable using 'diff'.
    
    - Stop assuming that reading from stdin means pretty printing as this broke
      pre-existing scripts, introduce a explicit --prettify command line option.
    
    - Improve type resolution for the --header command line option.
    
    - Disable incomplete CTF encoder, this needs to be done using the external
      libctf library.
    
    - Do not consider the ftrace filter when encoding BTF for kernel functions.
    
    - Add --kabi_prefix to avoid deduplication woes when using _RH_KABI_REPLACE(),
    
    - Add --with_flexible_array to show just types with flexible arrays.
    
    DWARF Loader:
    
    - Multithreaded loading, requires elfutils >= 0.178.
    
    - Lock calls to non-thread safe elfutils' libdw functions (dwarf_decl_file()
      and dwarf_decl_line())
    
    - Change hash table size to one that performs better with current typical
      vmlinux files.
    
    - Allow tweaking the hash table size from the command line.
    
    - Stop allocating memory for strings obtained from libdw, just defer freeing
      the Dwfl handler so that references to its strings can be safely kept.
    
    - Use a frontend cache for the latest lookup result.
    
    - Allow ignoring some DWARF tags when loading for encoding BTF, as BTF doesn't
      have equivalents for things like DW_TAG_inline_expansion and DW_TAG_label.
    
    - Allow ignoring some DWARF tag attributes, such as DW_AT_alignment, not used
      when encoding BTF.
    
    - Do not query for non-C attributes when loading a C language CU (compilation unit).
    
    BTF encoder:
    
    - Preparatory work for multithreaded encoding, the focus for 1.23.
    
    btfdiff:
    
    - Support diffing against a detached BTF file, e.g.: 'btfdiff vmlinux vmlinux.btf'
    
    - Support multithreaded DWARF loading, using the new pahole --sort option to have
      the output from both BTF and DWARF sorted and thus comparable via 'diff'.
    
    Build:
    
    - Support building with libc libraries lacking either obstacks or argp, such
      as Alpine Linux's musl libc.
    
    - Support systems without getconf() to obtain the data cacheline size, such
      as musl libc.
    
    - Add a buildcmd.sh for test builds, tested using the same set of containers
      used for testing the Linux kernel perf tools.
    
    - Enable selecting building with a shared libdwarves library or statically.
    
    - Allow to use the libbpf package found in distributions instead of with the
      accompanying libbpf git submodule.
    
    Cleanups:
    
    - Address lots of compiler warnings accumulated by not using -Wextra, it'll
      be added in the next release after allowing not to use it to build libbpf.
    
    - Address covscan report issues.
    
    Documentation:
    
    - Improve the --nr_methods/-m pahole man page entry.
    
    - Clarify that currently --nr_methods doesn't work together witn -C.
    
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    
  • upstream/v1.22

    f02af255 · pahole: Prep 1.22 ·
    pahole:
    
    - Allow encoding BTF to a separate BTF file (detached) instead of to a new
      ".BTF" ELF section in the file being encoded (vmlinux usually).
    
    - Introduce -j/--jobs option to specify the number of threads to use. Without
      arguments means one thread per CPU. So far used for the DWARF loader, will
      be used as well for the BTF encoder.
    
    - Show all different types with the same name, not just the first one found.
    
    - Introduce sorted type output (--sort), needed with multithreaded DWARF loading,
      to use with things like 'btfdiff' that expects the output from DWARF and BTF
      types to be comparable using 'diff'.
    
    - Stop assuming that reading from stdin means pretty printing as this broke
      pre-existing scripts, introduce a explicit --prettify command line option.
    
    - Improve type resolution for the --header command line option.
    
    - Disable incomplete CTF encoder, this needs to be done using the external
      libctf library.
    
    - Do not consider the ftrace filter when encoding BTF for kernel functions.
    
    - Add --kabi_prefix to avoid deduplication woes when using _RH_KABI_REPLACE(),
    
    - Add --with_flexible_array to show just types with flexible arrays.
    
    DWARF Loader:
    
    - Multithreaded loading, requires elfutils >= 0.178.
    
    - Lock calls to non-thread safe elfutils' libdw functions (dwarf_decl_file()
      and dwarf_decl_line())
    
    - Change hash table size to one that performs better with current typical
      vmlinux files.
    
    - Allow tweaking the hash table size from the command line.
    
    - Stop allocating memory for strings obtained from libdw, just defer freeing
      the Dwfl handler so that references to its strings can be safely kept.
    
    - Use a frontend cache for the latest lookup result.
    
    - Allow ignoring some DWARF tags when loading for encoding BTF, as BTF doesn't
      have equivalents for things like DW_TAG_inline_expansion and DW_TAG_label.
    
    - Allow ignoring some DWARF tag attributes, such as DW_AT_alignment, not used
      when encoding BTF.
    
    - Do not query for non-C attributes when loading a C language CU (compilation unit).
    
    BTF encoder:
    
    - Preparatory work for multithreaded encoding, the focus for 1.23.
    
    btfdiff:
    
    - Support diffing against a detached BTF file, e.g.: 'btfdiff vmlinux vmlinux.btf'
    
    - Support multithreaded DWARF loading, using the new pahole --sort option to have
      the output from both BTF and DWARF sorted and thus comparable via 'diff'.
    
    Build:
    
    - Support building with libc libraries lacking either obstacks or argp, such
      as Alpine Linux's musl libc.
    
    - Support systems without getconf() to obtain the data cacheline size, such
      as musl libc.
    
    - Add a buildcmd.sh for test builds, tested using the same set of containers
      used for testing the Linux kernel perf tools.
    
    - Enable selecting building with a shared libdwarves library or statically.
    
    - Allow to use the libbpf package found in distributions instead of with the
      accompanying libbpf git submodule.
    
    Cleanups:
    
    - Address lots of compiler warnings accumulated by not using -Wextra, it'll
      be added in the next release after allowing not to use it to build libbpf.
    
    - Address covscan report issues.
    
    Documentation:
    
    - Improve the --nr_methods/-m pahole man page entry.
    
    - Clarify that currently --nr_methods doesn't work together witn -C.
    
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>