summaryrefslogtreecommitdiffstats
path: root/tools/qrcheck/src/main.rs
diff options
context:
space:
mode:
authorsalmonik <salmonik@tuta.io>2026-08-03 00:21:52 +0200
committersalmonik <salmonik@tuta.io>2026-08-03 00:21:52 +0200
commit834b931d068a9a76e2c2a85267f24a22e93276cf (patch)
tree55fec8d47398a51a0c40dec8fba4f9664a12233a /tools/qrcheck/src/main.rs
parentv0.5.7: vt verify also as a boot marker (real hardware has no serial) (diff)
downloadrs-dos-834b931d068a9a76e2c2a85267f24a22e93276cf.tar.gz
rs-dos-834b931d068a9a76e2c2a85267f24a22e93276cf.zip
v0.5.7: guard dumps block-header math + 16-word window; vt content verify; shadow marker
The klog -t 2 crash drops a 126-byte String (the vt verify klog line) whose data ptr 0x40444970 points into the first-heap-block region whose content is the firmware 0x00AAAAAA scrub — a stale pointer, not a real allocation (back-pointer slot never written). Upgrades so the next real-hardware crash shows the full picture: - guard: explicit candidate block bases (b=ptr-24 / b16=ptr-32) with their size/free fields, plus a 16-word window (mem..mem4) from ptr-0x30 instead of the old 8 words - vt::debug_verify: content probe of the cells grid (must be all-BLANK at shell entry) — catches a stale in-heap cells pointer that passes the range checks - gop: on-screen marker for shadow carved vs NO-SHADOW fallback (the scrub content at the crash ptr suggests the shadow was rejected and its block stayed free + firmware-scrubbed)
Diffstat (limited to 'tools/qrcheck/src/main.rs')
0 files changed, 0 insertions, 0 deletions