sched(508): the x86 boot thread is not preempted away during its disk-completion wait - #980
Draft
ryanbreen wants to merge 9 commits into
Draft
sched(508): the x86 boot thread is not preempted away during its disk-completion wait#980ryanbreen wants to merge 9 commits into
ryanbreen wants to merge 9 commits into
Conversation
Issue 508: retain the boot scheduling brake across an IRQ-driven HLT wait, and apply the kernel preempt-count guard before blocked-state admission. Count boot-window switch departures and require the final test_exec marker in the x86 scorer. The baseline oracle records an incomplete registration block despite the previous gate passing. Validation: 70 structure suites passed; x86 testing profile built without project diagnostics. Runtime and mutation validation are recorded separately. Co-authored-by: Ryan Breen <ryan@breen.io> Co-authored-by: Claude Code <noreply@anthropic.com>
Retain the baseline, busy-spin mutation, repaired boot runs, and production validation with source citations and separate registration/oracle verdicts. Co-authored-by: Ryan Breen <ryan@breen.io> Co-authored-by: Claude Code <noreply@anthropic.com>
Issue 508 review: sample boot departures after dispatch rollback settles, retaining the outgoing preemption snapshot. Remove context-switch serial and logger calls plus can_schedule diagnostics and diagnostic-only state. Update the diagnostic censuses with their deleted sites. Validation: 70 structure suites passed, 8 source mutations rejected, 7 focused tests passed, and the x86 testing-profile build exited 0 without project compiler diagnostics. Full committed-revision boot rerun follows. Co-authored-by: Ryan Breen <ryan@breen.io> Co-authored-by: Claude Code <noreply@anthropic.com>
Preserve the committed-revision x86 transcript and serials. The boot-disk oracle passes, while the full gate exits 1 after polling is exhausted with argv failure and an ext2 lock-stall marker. Keep the runtime limitations and existing follow-ups distinct from the two reviewed code findings. Co-authored-by: Ryan Breen <ryan@breen.io> Co-authored-by: Claude Code <noreply@anthropic.com>
Correct transcript attribution and record pending landing status. Co-authored-by: Ryan Breen <ryan@breen.io> Co-authored-by: Claude Code <noreply@anthropic.com>
Co-authored-by: Ryan Breen <ryan@breen.io> Co-authored-by: Claude Code <noreply@anthropic.com>
The aarch64 strict gate failed; x86 preflight was cancelled under the stop rule. Co-authored-by: Ryan Breen <ryan@breen.io> Co-authored-by: Claude Code <noreply@anthropic.com>
The aarch64 strict gate failed; x86 preflight was cancelled under the stop rule. Co-authored-by: Ryan Breen <ryan@breen.io> Co-authored-by: Claude Code <noreply@anthropic.com>
Co-authored-by: Ryan Breen <ryan@breen.io> Co-authored-by: Claude Code <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The idle boot thread donated its held preemption count during disk completion waits, allowing a switch to discard the remaining boot continuation. This repair preserves the count in an idle-specific interrupt-driven halted wait and applies held-count refusal at scheduling admission. The departure oracle counts the resolved thread identity after switch return, excluding rollback.
NOT LANDED: the required merged-tip aarch64 strict gate failed 0/1 at 6cff8cf because the BSSH publickey oracle was absent. The x86 single gate was cancelled during preflight after that failure; the five-boot batch was not launched. Both standalone structure runs passed 71/71 suites. This PR remains draft and issue 508 remains open.
Historical captures contain 11/11 final registration markers, 9/11 accepted disk-wait oracles, and 5/5 busy-spin mutation FAIL oracles. Their full testing gates were red. The single-run transcript records the baseline revision only; attribution of that run to the repair commit is withdrawn. These readings do not establish a green landing.
Mechanism, oracle grammar, provenance corrections, launch load, gate logs, and limitations are in the round report. The failed landing logs are under docs/planning/green-program/block/serials/508/landing/.