Repository navigation
tools: asahi: update the G15 retention host fixture for the T6031 report - #296
Open
chriskearney wants to merge 1 commit into
Open
chriskearney wants to merge 1 commit into
chriskearney wants to merge 1 commit into
Conversation
The generated retention mock needs DeviceTree, ENODEV, to_errno, dev_warn, and asahi_g15_pmp_report_t6031 before the host suite can build against a backend that reports the T6031 GPU. Existing ownership cases stay. When that report call is present, the fixture checks setup-failure silence, graphs-then-report order, platform scope, and the nonfatal warning policy. This changes only the host fixture. It does not change the kernel and it does not claim hardware or a native module build. Signed-off-by: Chris Kearney <303316+chriskearney@users.noreply.github.com>
maralcbr
approved these changes
Nov 3, 2026
maralcbr
left a comment
Member
There was a problem hiding this comment.
Thanks @chriskearney, this looks right to me. Reviewed at cdb9f86. No blockers.
Checked and fine
- It fixes the fixture failure on #258. That PR's
host tests (tools)log shows this script failing to compile on the four things added here:dev_warn,asahi_g15_pmp_report_t6031,ENODEVandPlatform::DeviceTree. - The results hold on both sides of #258. Running it with
--mutationslocally gives 26 cases and 4 mutants on the current base, and 41 cases and 9 mutants on #258's head and on the base with #258's hunks applied. Every mutant fails on its intended assertion. - The T6031 naming is accurate.
t6031.rsis the only config usingPlatform::DeviceTree. - The base has moved 38 commits, none touching the script or the files it reads, so CI at this head still applies.
Nits, fine as follow-ups:
has_t6031_reportattools/asahi/g15-retention-tests.py:340should go once #258 lands. It's right while that PR is open, but afterwards removing the report call would drop back to 26 cases and still print PASS.- The case count is hardcoded in the receipt.
41/26is never compared with the count the run prints. - The existing failure cases don't assert that no report was made. Only the success paths on the other platforms do, so a report added only on an error path there wouldn't be caught.
Please merge this before #258, which then needs a fresh CI run. It's well behind the base anyway.
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 G15 retention host fixture cannot build once
start_backendreports the T6031 GPU. The generated mock lacksPlatform::DeviceTree,ENODEV/to_errno,dev_warn, andasahi_g15_pmp_report_t6031.This changes only
tools/asahi/g15-retention-tests.py. Existing ownership cases stay. When the extracted backend contains the report call, the fixture checks that setup failures make no report, and that success, ENODEV, and other errors follow graphs-then-report order, stay off other platforms, and keep the nonfatal warning policy.Validation: the unchanged backend passes all 26 existing cases and four mutation controls. The #258 backend and its effective merge pass 41 cases and nine mutation controls. Independent host checks reran the positive variants and lifetime mutants, then checked 21 separate platform/reply/setup cases; all five new mutants compiled and failed the intended assertions.
Host fixture compatibility only. No kernel change, hardware result, or native module claim. The recorded #258 CI failure stays a failure until that PR runs again on a tree containing the repair. Normal CI, code-owner review and merge queue still apply.