Skip to content

Disable log_ring_keeps_the_owners_slots behind its filed defect - #569

Merged
Japabu merged 3 commits into
mainfrom
wt/toyos-logringred
Sep 28, 2026
Merged

Japabu merged 3 commits into
mainfrom
wt/toyos-logringred

Conversation

@Japabu

@Japabu Japabu commented Sep 28, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

  • Disables log_ring_keeps_the_owners_slots in src/redlist.rs behind its filed defect, issues/kernel/a-log-rings-owner-is-named-only-when-logd-reads-its-registration.md.
  • That issue already recorded 2 red of 13 on origin/main, each red the same signature. The orchestrator's Fast-tier run of PR The kernel boots on QEMU's stock edk2, network included: the direct map ends at the last memory, every kernel root slot exists before the first user space, and a BAR's free run is a gap inside its width's space #563 at d6716fc7 hit it again: /log carries no "===TEST_END test_rs_log_flood exit=0===": the child's flood took the slots its parent's line needed (1917 flood lines in /log). The project rule is that a flaky test is disabled at once, never re-run.
  • The issue's status moves from open to expected-red (required by src/redlist.rs's own gate) and gets one added line recording this new sighting and the row it now backs.
  • Review round 2: the issue names its owner (toyos/src/log/region.rs's Ring::push; held by the orchestrator, matching the sibling expected-red issues' form) and its Exit line now names the two mutations — let keep = 0; in Ring::push (toyos/src/log/region.rs:202) and a deleted ring.own(pid) (userland/logd/src/origin.rs:176) — that the exit's test must turn red, since no test today exercises that owner decision. Drops a scratchpad log name, a redundant date and a sentence the row and status: expected-red already say.

Gates (host only — this agent never runs QEMU)

  • cargo test --lib: exit 0 (384 passed; 0 failed; 1 ignored) — includes the redlist-row check against the issue file.
  • cargo test --test toyos-build -- --list: exit 0 — lists log_ring_keeps_the_owners_slots and confirms it is disabled.
  • cargo run -- --known-red log_ring_keeps_the_owners_slots: exit 0, answered YES, disabled — it does not run.

Not run here

No guest test, Fast tier or cargo run launch — this is a redlist/issue-only change with no code under test; the orchestrator's own Fast-tier run of #563 is the evidence cited above, not reproduced by this agent.

🤖 Generated with Claude Code

issues/kernel/a-log-rings-owner-is-named-only-when-logd-reads-its-registration.md
already recorded 2 red of 13 on origin/main, each red the same failure. The
orchestrator's Fast-tier run of PR #563 at d6716fc on 2026-09-28 hit it
again: /log carried no "===TEST_END test_rs_log_flood exit=0===" because the
child's flood took the ring's slots the parent's own line needed (1917 flood
lines in /log). A flaky test is disabled at once, never re-run.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01W6rME2DoqwjcYFStYHHY4j
@Japabu
Japabu marked this pull request as ready for review September 28, 2026 07:39
@Japabu

Japabu commented Sep 28, 2026

Copy link
Copy Markdown
Collaborator Author

Review of #569 at 27a6c823, round 1.

Gates at this head: CI run 36392812754 (host), conclusion success, headSha 27a6c823. The reviewer re-ran the host gates because the brief asked for them. cargo test --lib exited 0 (384 passed, 0 failed, 1 ignored). cargo test --test toyos-build -- --list exited 0 and printed [toyos] disabled: log_ring_keeps_the_owners_slots — issues/kernel/a-log-rings-owner-is-named-only-when-logd-reads-its-registration.md. cargo run -- --known-red log_ring_keeps_the_owners_slots exited 0 and answered YES, disabled. The cited 563r4-fast.log has the failure at lines 1161 and 3365, with 400 passed, 1 failed.

Size: +6 −1, all of it a redlist row and issue lines. No production code and no tests.

Checked with no finding:

  • The row's shape is right: its multi-line form matches lan_swap's and it sits in order between latency_wake and partition_claim_departure.
  • status: expected-red is the status that check() requires.
  • "(fast tier)" still holds: tests/toyos.rs:775 still registers the test as Tier::Fast.
  • The exit still takes the row off. Deleting the issue file makes check() refuse the row ("is not a file in this tree").

BLOCKER
(none)

NOTE

  • toyos/src/log/region.rs:202 — with this row in place, no test exercises Ring::push's owner/pid decision or logd's ring.own(pid) (userland/logd/src/origin.rs:176). slots_left_to_others_are_theirs (toyos/src/log/proof.rs:208) passes keep in by hand on a Heap. log_program_flood (nightly) counts lines and checks no owner line. Neither covers the decision. let keep = 0; at region.rs:202, or deleting ring.own(pid), now passes every test in the tree. This is for the issue's owner: the exit's test must turn that mutation red.
  • issues/kernel/a-log-rings-owner-is-named-only-when-logd-reads-its-registration.md — the disable is a compromise, and its record names no holder. The sibling expected-red issues each name one (partition-claim-departure-…: "## Owner … held by the orchestrator"; a-swaps-redial-…: "Owner: … held by the orchestrator"). Add one owner line in that form.

REMOVE

  • issues/kernel/a-log-rings-owner-is-named-only-when-logd-reads-its-registration.md:31 — "563r4-fast.log" — a scratchpad name that resolves nowhere on main. bf936c2 cut the same kind of name.
  • issues/kernel/a-log-rings-owner-is-named-only-when-logd-reads-its-registration.md:31 — ", 2026-09-28" — the commit d6716fc7 already pins the sighting.
  • issues/kernel/a-log-rings-owner-is-named-only-when-logd-reads-its-registration.md:31 — "Disabled for this reason in src/redlist.rs." — status: expected-red and the row already say it.
  • PR body — "(log: 563r4-fast.log)" — the body becomes main's merge record, and this path resolves nowhere.

LAND AFTER NAMED CHANGES

Japabu and others added 2 commits September 28, 2026 09:58
…ons note, cut a scratchpad log name

The disable's issue named no holder; it now reads "Owner: `toyos/src/log/region.rs`'s
`Ring::push`; held by the orchestrator", matching the sibling expected-red
issues' form. Its Exit line folds in the reviewer's finding that no test
exercises the owner decision today: `let keep = 0;` in `Ring::push` or a
deleted `ring.own(pid)` each pass every test in the tree, so the exit's test
must turn both mutations red. Drops a scratchpad log name that resolves
nowhere on main, a redundant date and a sentence the row and `status:
expected-red` already say, in the issue and in the PR body.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01W6rME2DoqwjcYFStYHHY4j
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01W6rME2DoqwjcYFStYHHY4j
@Japabu
Japabu enabled auto-merge September 28, 2026 08:02
@Japabu
Japabu added this pull request to the merge queue Sep 28, 2026
Merged via the queue into main with commit 225dacb Sep 28, 2026
1 check passed
Japabu added a commit that referenced this pull request Sep 28, 2026
Brings #569 (log_ring_keeps_the_owners_slots on the redlist); no conflict.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01W6rME2DoqwjcYFStYHHY4j
@Japabu
Japabu deleted the wt/toyos-logringred branch September 28, 2026 09:47
Japabu added a commit that referenced this pull request Sep 28, 2026
Takes #560, #541, #565, #563, #569 and #570. `src/ci.rs` and
`tests/toyos.rs` merge without conflict; `rust` takes main's pin, 1b236638,
since this branch carries no fork commit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01W6rME2DoqwjcYFStYHHY4j
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant