#[repr(i32)]pub enum UnwindMode {
UnwindUnknown = 0,
UnwindSkip = 1,
UnwindDwarf = 2,
UnwindFramePointer = 3,
UnwindKernelFramePointer = 4,
}Expand description
Userspace unwinding mode.
Variants§
UnwindUnknown = 0
UnwindSkip = 1
Do not unwind userspace:
UnwindDwarf = 2
Use libunwindstack (default):
UnwindFramePointer = 3
Use userspace frame pointer unwinder:
UnwindKernelFramePointer = 4
Ask the kernel to unwind the userspace stack via frame pointers, using PERF_SAMPLE_CALLCHAIN. The user stack bytes are not copied into the sample, which avoids the per-sample copy cost and the depth limit imposed by PERF_SAMPLE_STACK_USER. Requires that the userspace code (including system libraries) is built with frame pointers - the kernel walks the chain and returns instruction addresses, which still need to be symbolized offline using the recorded process mappings.
Implementations§
Source§impl UnwindMode
impl UnwindMode
Source§impl UnwindMode
impl UnwindMode
Sourcepub fn as_str_name(&self) -> &'static str
pub fn as_str_name(&self) -> &'static str
String value of the enum field names used in the ProtoBuf definition.
The values are not transformed in any way and thus are considered stable (if the ProtoBuf definition does not change) and safe for programmatic use.
Trait Implementations§
Source§impl Clone for UnwindMode
impl Clone for UnwindMode
Source§fn clone(&self) -> UnwindMode
fn clone(&self) -> UnwindMode
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for UnwindMode
impl Debug for UnwindMode
Source§impl Default for UnwindMode
impl Default for UnwindMode
Source§fn default() -> UnwindMode
fn default() -> UnwindMode
Source§impl From<UnwindMode> for i32
impl From<UnwindMode> for i32
Source§fn from(value: UnwindMode) -> i32
fn from(value: UnwindMode) -> i32
Source§impl Hash for UnwindMode
impl Hash for UnwindMode
Source§impl Ord for UnwindMode
impl Ord for UnwindMode
Source§fn cmp(&self, other: &UnwindMode) -> Ordering
fn cmp(&self, other: &UnwindMode) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for UnwindMode
impl PartialEq for UnwindMode
Source§fn eq(&self, other: &UnwindMode) -> bool
fn eq(&self, other: &UnwindMode) -> bool
self and other values to be equal, and is used by ==.