[BUG] Native mapping fixture conflicts with the caller capability layout #24
Labels
No labels
bug
ci
docs
duplicate
enhancement
help wanted
invalid
performance
phase-6
question
refactor
security
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
erix/kernel#24
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
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,04da07f0ffandecdb75000brespectively. 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
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.