Uh oh!
There was an error while loading. Please reload this page.
feat: discover jitdump files - #280
Conversation
The jitdump search was hardcoded to /tmp/jit-{pid}.dump, which
misses jitdumps from LLVM ORC JIT (e.g. revmc, Julia) that write to
{JITDUMPDIR|HOME}/.debug/jit/*/jit-{pid}.dump per JITLoaderPerf.cpp.Instead of searching hardcoded filesystem paths, extract jitdump file paths from MMAP2 records in the perf data. This is how perf inject finds them and works for any jitdump location.
Only match basenames of the form jit-<digits>.dump instead of any .dump suffix. This matches the validation in perf's jit_detect().
Match perf's jit_detect() behavior: the PID embedded in the jitdump filename must match the MMAP2 record's PID. Also fixes a bug where rposition returned a usize that was incorrectly used as a byte slice.
8f488d7 to
92ff4b6CompareGreptile SummaryThis PR discovers jitdump files from perf MMAP2 records instead of relying only on fixed paths. The main changes are:
Confidence Score: 5/5This looks safe to merge.
Important Files Changed
Reviews (2): Last reviewed commit: "fix: dedupe jitdump paths" | Re-trigger Greptile |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Use an IndexSet for discovered jitdump paths so repeated MMAP2 records do not append duplicate symbols or unwind data. Also keep the legacy /tmp/jit-<pid>.dump fallback for tracked PIDs when perf starts too late to capture the jitdump marker mapping.
not-matthias
left a comment
There was a problem hiding this comment.
Hey, it looks like the jitdump implementation was only done for the Walltime executor. As mentioned on Discord, we're currently in the process of switching to samply, so this change isn't really needed.
Instead, the jitdump saving should be handled in src/executor/valgrind/executor.rs. Let me know if you have any questions.
DaniPopes
commented
Jul 28, 2026
woops |
Jitdump discovery was hardcoded to
/tmp/jit-{pid}.dump, missing dumps from LLVM ORC JIT (e.g. revmc, Julia) which write to~/.debug/jit/*/jit-{pid}.dump.Instead of searching hardcoded filesystem paths, extract jitdump file paths from MMAP2 records in the perf data, matching how
perf inject --jitdiscovers them viajit_detect().