pub struct Kernel {
pub kallsyms: MaybeDefault<PathBuf>,
pub vmlinux: MaybeDefault<PathBuf>,
pub kaslr_offset: Option<u64>,
pub debug_syms: bool,
/* private fields */
}Expand description
Configuration for kernel address symbolization.
This type is used in the Source::Kernel variant.
Fields§
§kallsyms: MaybeDefault<PathBuf>The path of a kallsyms file to use.
By default, this will refer to kallsyms of the running kernel.
If set to None usage of kallsyms will
be disabled. Otherwise the copy at the given path will be used.
If both a vmlinux as well as a kallsyms file are found,
vmlinux will generally be given preference and kallsyms acts
as a fallback.
vmlinux: MaybeDefault<PathBuf>The path of the vmlinux file to use.
vmlinux is generally an uncompressed and unstripped object
file that is typically used in debugging, profiling, and
similar use cases.
By default, the library will search for candidates in various
locations, taking into account the currently running kernel
version. If set to None discovery and
usage of a vmlinux file will be disabled. Otherwise the copy at
the given path will be used.
If both a vmlinux as well as a kallsyms file are found,
vmlinux will generally be given preference and kallsyms acts
as a fallback.
kaslr_offset: Option<u64>The KASLR offset to use.
Given a value of None, the library will attempt to deduce the
offset itself. Note that this value only has relevance when a
kernel image is used for symbolization, because kallsyms based
data already include randomization adjusted addresses.
debug_syms: boolWhether or not to consult debug symbols from vmlinux to
satisfy the request (if present).
On top of this runtime configuration, the crate needs to be
built with the dwarf feature to actually consult debug
symbols. If either is not satisfied, only ELF symbols will be
used.