journal 2026-05-05

P84 shell profile flamegraph

P84 changed the question from “can the shell work?” to “where does a normal shell session spend cycles?”

The guest now runs a deterministic BusyBox ash workload: echo, uname, ls, cat, /tmp file create/read/remove, and a short shell loop. The Verilator harness runs in +profile mode and timestamps a marker after each completed command phase.

Artifacts from the run:

Honest caveat: this is flamegraph-style, not a true stack flamegraph. We only sample the current PC. Kernel addresses resolve well; BusyBox userspace still appears as physical/raw address buckets. That is useful because it tells us the next profiler improvement plainly.

Status: PASS for the shell workload benchmark and site data staging. LibreLane hardening is NOT RUN.

First numbers:

phasecycles
kernel banner to /init120,446,463
shell setup to first command37,525,853
uname -a2,328,911
ls /bin /usr/share/p8436,947,459
cat sample file5,484,333
/tmp file create/read/remove9,997,660
8x ash loop with file I/O23,440,310