Skip to content
drgn 0.0.14

New features:

- Support for DWARF 5 was added.
- Object.from_bytes_() was added. It creates an object from its binary
  representation.
- Object.to_bytes_() was added. It gets the binary representation of an
  object.
- Helpers for Linux kernel NUMA node masks were added
  (drgn.helpers.linux.nodemask).
- Helpers for Linux kernel bit operations were added
  (drgn.helpers.linux.bitops).
- Helpers for getting network devices by name or interface index were
  added (drgn.helpers.linux.net.netdev_get_by_{index,name}()).
- drgn.helpers.linux.sched.task_state_to_char() was updated for Linux
  v5.14.

Fixes:

- A bug when translating values from little-endian to big-endian was
  fixed.
- A workaround for a bug in elfutils < 0.177 was (re)added. The bug
  causes stdin to be closed and another file descriptor to be leaked
  when targeting a userspace core dump.
- Support for the kdump format was fixed (it was broken in v0.0.12 and
  v0.0.13).
- A potential buffer overread caused by DWARF information with an
  invalid DW_AT_strp value was fixed.
- A potential buffer overread caused by DWARF information with an
  invalid 64-bit size on a 32-bit system was fixed.
- Missing support for the DWARF DW_FORM_block encoding was added.
- Support for DW_FORM_ref_addr in DWARF 2 files was fixed to use the
  correct size.
- "Non-canonical" LEB128 values are now handled correctly.
- Stack trace object lookups and source location lookups were fixed for
  files with incomplete .debug_aranges information (e.g., the Linux
  kernel when compiled by Clang).
- drgn.helpers.linux.cpumask.for_each_cpu() was fixed to not read out of
  bounds in kernels configured with CONFIG_CPUMASK_OFFSTACK (e.g.,
  Fedora kernels).