pub struct DwarfUnwindManager {
pub binary_tables: HashMap<u8, Vec<UnwindEntry>>,
pub proc_info: HashMap<u32, ProcInfo>,
/* private fields */
}Expand description
Holds the unwind tables for all currently profiled processes
Fields§
§binary_tables: HashMap<u8, Vec<UnwindEntry>>Per-binary unwind tables: map from shard_id to the entries
proc_info: HashMap<u32, ProcInfo>Per-process mapping information
Implementations§
Source§impl DwarfUnwindManager
impl DwarfUnwindManager
pub fn new() -> Self
Sourcepub fn load_process(&mut self, tgid: u32) -> Result<(), String>
pub fn load_process(&mut self, tgid: u32) -> Result<(), String>
Load unwind information for a process by scanning its memory mappings. Returns Ok(()) if the process was loaded (or already loaded).
Sourcepub fn refresh_process(&mut self, tgid: u32) -> Result<Vec<u8>, String>
pub fn refresh_process(&mut self, tgid: u32) -> Result<Vec<u8>, String>
Rescan a process’s memory mappings and load any new ones. Returns the list of new shard IDs added (for incremental eBPF updates).
Sourcepub fn total_entries(&self) -> usize
pub fn total_entries(&self) -> usize
Returns the total number of table entries across all binaries
Auto Trait Implementations§
impl Freeze for DwarfUnwindManager
impl RefUnwindSafe for DwarfUnwindManager
impl Send for DwarfUnwindManager
impl Sync for DwarfUnwindManager
impl Unpin for DwarfUnwindManager
impl UnwindSafe for DwarfUnwindManager
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more