From 0ef0191f97ad552abe649a89859923bf7adbb935 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Kr=C3=B6ning?= Date: Mon, 25 Mar 2024 16:11:26 +0100 Subject: [PATCH] feat(frontend): add binary offset for hermit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Martin Kröning --- rftrace-frontend/src/frontend.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/rftrace-frontend/src/frontend.rs b/rftrace-frontend/src/frontend.rs index cb3c600..a05121b 100644 --- a/rftrace-frontend/src/frontend.rs +++ b/rftrace-frontend/src/frontend.rs @@ -175,6 +175,15 @@ pub fn dump_full_uftrace(events: &mut Events, out_dir: &str, binary_name: &str) ); let mut procfile = File::open("/proc/self/maps")?; io::copy(&mut procfile, &mut mapfile)?; + } else if #[cfg(target_os = "hermit")] { + extern "C" { + fn sys_image_start_addr() -> usize; + } + + let addr = unsafe { sys_image_start_addr() }; + + writeln!(mapfile, "{addr:0>12x}-ffffffffffff r-xp 00000000 00:00 0 {binary_name}")?; + writeln!(mapfile, "ffffffffffff-ffffffffffff rw-p 00000000 00:00 0 [stack]")?; } else { println!(" Creating ./sid-{sid}.map fake memory map file");