[BUG] Native mapping fixture conflicts with the caller capability layout #24

Closed
opened 2026-09-22 01:33:21 +02:00 by erikinkinen · 0 comments
Owner

Summary

The added native mapping fixture initially failed before its new checks could complete. Its setup inventory omitted new grants, its first corrected slots lay outside the caller window, and the next placement overlapped an earlier test's temporary derivation destinations. Ordinary images do not enable this diagnostic.

Reproduction

Run the maintained lifetime-revocation scenario with Integration's exact native source catalog. Retained attempts used Kernel 11182adda3, 04da07f0ff and ecdb75000b respectively. Each attempt has a distinct signed source and retained image; none was retried unchanged.

Expected and actual behavior

Expected the complete declared capability inventory and every CPL3 witness to pass, including ordinary mapping and grant disposal. The first image panicked on the setup inventory before user entry; the following images failed actual syscall-return checks. QEMU exited with 37 instead of 33. The final correction retains a MAP-only own-VSpace alias, declares all three temporary grants, places them after the complete earlier grant extent, and checks their fit within the unchanged caller window at compile time. Exact inventory, page census, original failure markers and three actual grant drops remain required.

Environment and identity

  • Kernel: the three signed revisions above; fixed by the selected Kernel.
  • Coordinated runner/catalog: Integration.
  • Native x86_64 release diagnostic, TCG, one CPU and the original 60-second guest limit.
  • Authority: only owned frame READ/MAP, endpoint SEND and own-VSpace MAP grants are added; management roots are removed before entry.

Evidence and prior checks

All three failed images and their original producer artifacts remain retained, with true statuses, no image warnings and empty QEMU stderr. Host suites and native compilation passed before execution exposed the fixture errors. The final native profile passes in both strict build configurations and private rustdoc. Unchanged host/production modules retain the 745/769-test matrices. The corrected actual lifetime VM passes every original witness plus USER_MAPPING_DOMAIN_OK. Invocation, both maintained mapping contracts and the ordinary exec-successor VM also pass, with original timeouts and no warning relaxation.

Tracking

Resolved in Kernel PR 3 and Integration PR 12. This fixture failure is separate from the ordinary address-admission defect. Wider authority, private-root and guest-build obligations remain in the phase checklist.

Verified documentation and CI follow-up — 22 September 2026: Kernel documentation and Integration documentation record the accepted native mapping, three-grant cleanup and ordinary exec-successor evidence. Every executable file is identical to the tested implementation; Markdown and diff checks pass. All three failed fixture attempts remain in report 24, separately from the fixed admission defect. The complete manual passes 45 tests and 2,431 pages with no final warnings. The final static inventory covers 3,180 authored code files below 1,000 lines, 259 exact Git pins and the existing direct missing_docs declarations; it does not establish full semantic authority closure.

Original full Integration 1703/1704, source dff878dd3545c4751b3c05d37b2bdd5e21cce548, pass from six complete logs totalling 26,964,178 bytes and zero warnings. Their ext4 quota/links and FAT32 directory scenarios explicitly pass. Earlier timing failures remain retained and their causes are unestablished. Kernel 634/635 report cancelled, with runner context-cancellation messages and four complete logs. No cancellation request was issued during this work; the workflow declares no cancellation policy, and the initiating cause remains unestablished. These runs receive no CI acceptance credit. Current Kernel 636/637 and Docs 1007/1008 pass. Each pair has four complete logs: Kernel totals 773,796 bytes with zero warnings, and Docs totals 774,706 bytes with zero final warnings. Both manual builds retain their initial 35/1/0 LaTeX warning sequence through convergence. Integration 1717–1720 remains queued.

The phase checklist remains at 15/460 accepted leaves, weighted 3.48%. Private hardware roots, complete authority cleanup, measured startup improvement, native external Rust/LLVM/runtime rebuilding and both complete EriX guest-build generations remain open.

## Summary The added native mapping fixture initially failed before its new checks could complete. Its setup inventory omitted new grants, its first corrected slots lay outside the caller window, and the next placement overlapped an earlier test's temporary derivation destinations. Ordinary images do not enable this diagnostic. ## Reproduction Run the maintained lifetime-revocation scenario with Integration's exact native source catalog. Retained attempts used Kernel 11182adda3ad6786415c32314032e28e79b968ba, 04da07f0ff742cc9ef8981cf4429900fb95187a1 and ecdb75000bd0f678c677b52b6143c87008b722d7 respectively. Each attempt has a distinct signed source and retained image; none was retried unchanged. ## Expected and actual behavior Expected the complete declared capability inventory and every CPL3 witness to pass, including ordinary mapping and grant disposal. The first image panicked on the setup inventory before user entry; the following images failed actual syscall-return checks. QEMU exited with 37 instead of 33. The [final correction](https://git.erikinkinen.fi/erix/kernel/commit/ef3fd9293eaf691269fdb9e6b72eb15dac1f3f06) retains a MAP-only own-VSpace alias, declares all three temporary grants, places them after the complete earlier grant extent, and checks their fit within the unchanged caller window at compile time. Exact inventory, page census, original failure markers and three actual grant drops remain required. ## Environment and identity - Kernel: the three signed revisions above; fixed by [the selected Kernel](https://git.erikinkinen.fi/erix/kernel/commit/ef3fd9293eaf691269fdb9e6b72eb15dac1f3f06). - Coordinated runner/catalog: [Integration](https://git.erikinkinen.fi/erix/integration/commit/cd560584d034720ac179d5abc6f2a9d965943c63). - Native x86_64 release diagnostic, TCG, one CPU and the original 60-second guest limit. - Authority: only owned frame READ/MAP, endpoint SEND and own-VSpace MAP grants are added; management roots are removed before entry. ## Evidence and prior checks All three failed images and their original producer artifacts remain retained, with true statuses, no image warnings and empty QEMU stderr. Host suites and native compilation passed before execution exposed the fixture errors. The final native profile passes in both strict build configurations and private rustdoc. Unchanged host/production modules retain the 745/769-test matrices. The corrected actual lifetime VM passes every original witness plus USER_MAPPING_DOMAIN_OK. Invocation, both maintained mapping contracts and the ordinary exec-successor VM also pass, with original timeouts and no warning relaxation. ## Tracking Resolved in [Kernel PR 3](https://git.erikinkinen.fi/erix/kernel/pulls/3) and [Integration PR 12](https://git.erikinkinen.fi/erix/integration/pulls/12). This fixture failure is separate from the [ordinary address-admission defect](https://git.erikinkinen.fi/erix/kernel/issues/23). Wider authority, private-root and guest-build obligations remain in [the phase checklist](https://git.erikinkinen.fi/erix/integration/issues/65). Verified documentation and CI follow-up — 22 September 2026: [Kernel documentation](https://git.erikinkinen.fi/erix/kernel/commit/d0d9e25b71664126c29727265f285df2f5ae7fea) and [Integration documentation](https://git.erikinkinen.fi/erix/integration/commit/c41bb92cd0ff5444c1680bee476a70072529fdb0) record the accepted native mapping, three-grant cleanup and ordinary exec-successor evidence. Every executable file is identical to the tested implementation; Markdown and diff checks pass. All three failed fixture attempts remain in [report 24](https://git.erikinkinen.fi/erix/kernel/issues/24), separately from the fixed [admission defect](https://git.erikinkinen.fi/erix/kernel/issues/23). The complete manual passes 45 tests and 2,431 pages with no final warnings. The final static inventory covers 3,180 authored code files below 1,000 lines, 259 exact Git pins and the existing direct missing_docs declarations; it does not establish full semantic authority closure. Original full Integration [1703](https://git.erikinkinen.fi/erix/integration/actions/runs/1703)/[1704](https://git.erikinkinen.fi/erix/integration/actions/runs/1704), source dff878dd3545c4751b3c05d37b2bdd5e21cce548, pass from six complete logs totalling 26,964,178 bytes and zero warnings. Their ext4 quota/links and FAT32 directory scenarios explicitly pass. Earlier timing failures remain retained and their causes are unestablished. Kernel [634](https://git.erikinkinen.fi/erix/kernel/actions/runs/634)/[635](https://git.erikinkinen.fi/erix/kernel/actions/runs/635) report cancelled, with runner context-cancellation messages and four complete logs. No cancellation request was issued during this work; the workflow declares no cancellation policy, and the initiating cause remains unestablished. These runs receive no CI acceptance credit. Current Kernel [636](https://git.erikinkinen.fi/erix/kernel/actions/runs/636)/[637](https://git.erikinkinen.fi/erix/kernel/actions/runs/637) and Docs [1007](https://git.erikinkinen.fi/erix/docs/actions/runs/1007)/[1008](https://git.erikinkinen.fi/erix/docs/actions/runs/1008) pass. Each pair has four complete logs: Kernel totals 773,796 bytes with zero warnings, and Docs totals 774,706 bytes with zero final warnings. Both manual builds retain their initial 35/1/0 LaTeX warning sequence through convergence. Integration 1717–1720 remains queued. The phase checklist remains at 15/460 accepted leaves, weighted 3.48%. Private hardware roots, complete authority cleanup, measured startup improvement, native external Rust/LLVM/runtime rebuilding and both complete EriX guest-build generations remain open.
erikinkinen 2026-09-22 01:33:21 +02:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
erix/kernel#24
No description provided.