diff options
| author | salmonik <salmonik@tuta.io> | 2026-08-02 21:47:58 +0200 |
|---|---|---|
| committer | salmonik <salmonik@tuta.io> | 2026-08-02 21:47:58 +0200 |
| commit | fa5b879688a4f04e0ed8966e4c1a2ce82cfacd93 (patch) | |
| tree | 5870438e11ac45acadb0fc6e3ae607ab10b582f3 | |
| parent | v0.5.7: allocator corruption guard + full register dump for real-hardware repro (diff) | |
| download | rs-dos-fa5b879688a4f04e0ed8966e4c1a2ce82cfacd93.tar.gz rs-dos-fa5b879688a4f04e0ed8966e4c1a2ce82cfacd93.zip | |
docs: CONTEXT.md versioning — 0.5.6 backtrace dumps + 0.5.7 allocator guard
| -rw-r--r-- | CONTEXT.md | 13 |
1 files changed, 12 insertions, 1 deletions
| @@ -132,7 +132,18 @@ progress straight to the framebuffer (the last marker before a hang | |||
| 132 | identifies the death site) and pre-shell panics now draw a white-on-red | 132 | identifies the death site) and pre-shell panics now draw a white-on-red |
| 133 | `*** PANIC ***` band instead of a silent blank screen, and the shadow | 133 | `*** PANIC ***` band instead of a silent blank screen, and the shadow |
| 134 | fallback allocation is panic-proof (try_reserve; a heap OOM degrades | 134 | fallback allocation is panic-proof (try_reserve; a heap OOM degrades |
| 135 | to no-shadow mode instead of halting). A future major GUI overhaul | 135 | to no-shadow mode instead of halting); 0.5.6 makes every fault dump |
| 136 | carry the kernel image base + a stack backtrace (rbp-chain plus a raw | ||
| 137 | scan of the stack above the interrupted rsp, filtered to the in-memory | ||
| 138 | .text range parsed from the PE headers — so a real-hardware crash can | ||
| 139 | be resolved against the PDB offline); 0.5.7 (current) adds a full | ||
| 140 | register dump to every fault line (rax..rdi, rbx, r8..r15) and an | ||
| 141 | allocator corruption guard: `dealloc` validates the back-pointer at | ||
| 142 | `[ptr-8]` (in-heap block, sane size, in-use) and, when the header is | ||
| 143 | clobbered, prints `ptr`/`block`/heap range + the memory around the | ||
| 144 | block + the live stack chain, writes the crash band + crash.log, and | ||
| 145 | halts — instead of the opaque #GP inside `__rust_dealloc` that the | ||
| 146 | OptiPlex showed. A future major GUI overhaul | ||
| 136 | (graphics windows beyond the text surface) would be the `a` bump | 147 | (graphics windows beyond the text surface) would be the `a` bump |
| 137 | (1.0.0). | 148 | (1.0.0). |
| 138 | 149 | ||
