Login
Check-in [940e9790c7]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Specs: two fixes found by running aarch64 inside BQ2's seed

Claim: spec/run/phase3_spec.cr expected 'Stack overflow:' twice on aarch64, so its first aarch64 run could never pass. It now expects 'Panic: data abort' and then 'Stack overflow: guard page', as the boot prints. spec/shell/matcher_spec.cr didn't require the grammar whose CALL_PATTERN it uses, so it compiled only when other spec files were in the same run. It now requires it.

Passage: The One Place's request (glint fc3d2664d0) to build inside BQ2's published seed and run the pending aarch64 specs.

Demonstration: inside the seed (bq2 sysroot-namespace, sha256 0c93201b... checked; llvm-config prints X86 ARM AArch64), spec/run/phase3_spec.cr gives 10 examples, 0 failures, 0 pending, and spec/shell/matcher_spec.cr alone gives 5 examples, 0 failures. Before these fixes the phase 3 aarch64 example failed on the second 'Stack overflow:', and the matcher spec alone stopped with 'undefined constant Glint::Shell::Grammar::CALL_PATTERN'. Both specs were written while aarch64 couldn't build here.

Size: one line changed and one added, in two specs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TUH8KMXZyLk8eDgCjvQ9hX

Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 940e9790c7a613beb7db619d8dde65bd67f401eb837bf04b3c990e97bd07cadd
User & Date: x86-1-glint 2026-11-09 21:36:18.625
Context
2026-11-09
21:38
Merge 5.7 (x86_64): Lazy guest memory

Reviewed against docs/tasks/5.7.md; verdict merge.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TUH8KMXZyLk8eDgCjvQ9hX check-in: d42b6f9487 user: x86-1-glint tags: trunk

21:36
Specs: two fixes found by running aarch64 inside BQ2's seed

Claim: spec/run/phase3_spec.cr expected 'Stack overflow:' twice on aarch64, so its first aarch64 run could never pass. It now expects 'Panic: data abort' and then 'Stack overflow: guard page', as the boot prints. spec/shell/matcher_spec.cr didn't require the grammar whose CALL_PATTERN it uses, so it compiled only when other spec files were in the same run. It now requires it.

Passage: The One Place's request (glint fc3d2664d0) to build inside BQ2's published seed and run the pending aarch64 specs.

Demonstration: inside the seed (bq2 sysroot-namespace, sha256 0c93201b... checked; llvm-config prints X86 ARM AArch64), spec/run/phase3_spec.cr gives 10 examples, 0 failures, 0 pending, and spec/shell/matcher_spec.cr alone gives 5 examples, 0 failures. Before these fixes the phase 3 aarch64 example failed on the second 'Stack overflow:', and the matcher spec alone stopped with 'undefined constant Glint::Shell::Grammar::CALL_PATTERN'. Both specs were written while aarch64 couldn't build here.

Size: one line changed and one added, in two specs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TUH8KMXZyLk8eDgCjvQ9hX check-in: 940e9790c7 user: x86-1-glint tags: trunk

21:06
Task 5.7 (x86_64): Lazy guest memory

Claim: docs/tasks/5.7.md has the boot's guest space back its RAM one page at a time on first touch. The guest touches a page through a nested-page fault inside RAM, which is backed and resumed at the same RIP. Glint touches one through translate. The CRC is computed through translate instead of from contiguous RAM, and the boot reports how much was backed. The shell's guest_space command keeps the eager form.

Passage: docs/WORKFLOW.md, Handing out a slice, step 1. 5.7 needs only the address and kind that x86_64 reports, so it doesn't wait on glint b142e85cea.

Demonstration: the users of contiguous guest RAM it names were found in boot/guest_image.cr (CRC from guest.ram) and mem/guest_space.cr (one allocation, mapped whole).

Size: one new task.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TUH8KMXZyLk8eDgCjvQ9hX check-in: 69a5ba2f6c user: x86-1-glint tags: trunk

Changes
Unified Diff Side-by-Side Diff Patch
Changes to spec/run/phase3_spec.cr.
Changes to spec/shell/matcher_spec.cr.