Support Matrix

Architectures

Some features in drgn require architecture-specific support. The current status of this support is:

Architecture

Linux Kernel Modules [1]

Stack Traces [2]

Virtual Address Translation [3]

x86-64

AArch64

s390x

ppc64

i386

Arm

RISC-V

Key

The listed architectures are recognized in drgn.Architecture. Other architectures are represented by drgn.Architecture.UNKNOWN. Features not mentioned above should work on any architecture, listed or not.

Cross-Debugging

drgn can debug architectures different from the host. For example, you can debug an AArch64 (kernel or userspace) core dump from an x86-64 machine.

Linux Kernel Versions

drgn officially supports the current mainline, stable, and longterm kernel releases from kernel.org. (There may be some delay before a new mainline version is fully supported.) End-of-life versions are supported until it becomes too difficult to do so. The kernel versions currently fully supported are:

  • 6.0-6.8

  • 5.10-5.19

  • 5.4

  • 4.19

  • 4.14

  • 4.9

Other versions are not tested. They’ll probably mostly work, but support is best-effort.

Kernel Configuration

drgn supports debugging kernels with various configurations:

  • SMP and !SMP.

  • Preemptible and non-preemptible.

  • SLUB, SLAB, and SLOB allocators.

drgn requires a kernel configured with CONFIG_PROC_KCORE=y for live kernel debugging.