Repository navigation
ci: boot IRIX 6.5.30 on an O2 in the nightly boot test - #643
Open
jamesbraid wants to merge 2 commits into
Open
jamesbraid wants to merge 2 commits into
jamesbraid wants to merge 2 commits into
Conversation
jamesbraid
force-pushed
the
ci/irix6530-o2-boot
branch
from
November 12, 2026 07:33
52429d5 to
048a68e
Compare
jamesbraid
force-pushed
the
ci/irix6530-o2-boot
branch
2 times, most recently
from
November 12, 2026 09:09
19b70ca to
725990d
Compare
jamesbraid
force-pushed
the
ci/irix6530-o2-boot
branch
from
November 12, 2026 09:47
725990d to
19b70ca
Compare
`iris-ci rtc-save` answered "not supported here" on an O2, so a scripted run that seeds the PROM's environment with setenv could not ask for the flash to be written, as it does on the Indy and the Octane. The O2 keeps that environment in flash, and saves it only when the guest writes it and when the machine stops. Implement the call on the O2: it writes the flash to the file `nvram` names, and the RTC's RAM beside it. A path argument is refused, since the flash has one home. The test builds an O2, saves, and checks the file is the size of the part. Found while teaching `iris-ci boot-test` the O2: its seeding pass sent rtc-save after the setenv lines and stopped on the error.
The nightly boot test covered IRIX 5.3 and 6.5.22, both on an Indy, and nothing booted 6.5.30. No 6.5.30 Indy disk is published, but the dist host has a stock 6.5.30 O2 install, so teach boot-test to boot another machine. `iris-ci boot-test` takes `--machine`, a profile name, and `--prom`. The Indy stays the default. The O2 has no PROM built in, so it needs one, and the config the test writes now names the machine and the PROM. The O2's Command Monitor prompts with `> ` where the Indy's prints `>> `, so the prompt is chosen by machine; waiting for `> ` everywhere would stop early on any `> ` inside a listing. The disk, NVRAM variables and `console d` are the same as the Indy's, so tests/irix/boot-irix6530-o2.toml repeats boot-irix65.toml, serial only for want of a golden screenshot. The `irix` list gets a third image, the O2's, with its machine, disk and PROM, each pinned by URL and sha256. Like the other images it boots on every host platform. The Indy images leave the machine and PROM fields empty. The job downloads the PROM and checks its hash when the image names one. The PROM is rev 4.18, the IRIX installer's ip32prom.image (sha256 11230c35...). The O2 has no PROM on the dist host yet: the entry points at prom/ip32prom-4.18.image there, which has to be uploaded before the nightly can pass. Run locally with iris and iris-ci built from this tree on the pinned disk (sha256 checked after download) and that PROM: all five checks passed and `login:` arrived 170 s after start, 181 s for the whole test, on a loaded 16-thread host. The runner-side steps did not run here: actionlint is clean, but the job itself needs GitHub.
jamesbraid
force-pushed
the
ci/irix6530-o2-boot
branch
from
November 12, 2026 14:47
19b70ca to
53ed8b6
Compare
jamesbraid
marked this pull request as ready for review
November 12, 2026 14:54
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 nightly boot test boots IRIX 5.3 and 6.5.22, both on an Indy, so nothing
checks that iris still brings up 6.5.30. No 6.5.30 Indy disk is published, but a
stock 6.5.30 O2 install is, so boot-test now learns a second machine.
ip32: save the PROM's flash on iris-ci rtc-save:rtc-savefailed on anO2, which stopped boot-test's seeding pass. It now writes the flash to the
nvramfile.ci: boot IRIX 6.5.30 on an O2 ...:--machineand--promforiris-ci boot-test, a per-machine Command Monitor prompt (>on the O2,>>on the Indy), a serial-only steps file, and a third image in theirixlist that pins the disk and the PROM by URL and sha256. It boots on everyhost, like the other images; the Indy images leave machine and PROM empty.
Scrutinise: the O2 image points at
prom/ip32prom-4.18.imageon the disthost, which is not uploaded. The O2 has no PROM built in, and the file is the
rev 4.18
ip32prom.imagefrom the IRIX installer (sha256 11230c35...fb23c). Ithas to be uploaded before the nightly can pass, or the O2 jobs fail. It publishes when
origami PR #4000 merges.
Verified locally with iris and iris-ci built from this tree, no hostgl: the
disk's sha256 matches the pinned one, and all five boot-test checks passed,
reaching
login:170 s after start (181 s for the whole test) on a loadedhost.
cargo check --tests -p iris, default and--features jitv2, theiris-citests andcargo test -p iris --lib ip32pass; actionlint is clean onbuild.yml. Not run: the job on a GitHub runner, and the Indy entries with the
changed prompt plumbing (the Indy keeps
>>, covered by a unit test only).