Skip to content

real-hw-test: fix aarch64 QEMU smoke test on Ubuntu 26.04 - #96

Merged
phip1611 merged 3 commits into
rust-osdev:mainfrom
phip1611:real-hw-test-aarch64-tcg-cpu
Nov 2, 2026
Merged

phip1611 merged 3 commits into
rust-osdev:mainfrom
phip1611:real-hw-test-aarch64-tcg-cpu

Conversation

@phip1611

@phip1611 phip1611 commented Nov 2, 2026 •

Copy link
Copy Markdown
Member

The aarch64 smoke test has failed since ubuntu-latest moved to Ubuntu 26.04: its AAVMF 2025.11 firmware hangs before BDS with -cpu max. TCG now uses -cpu neoverse-n1, and the CI harness logs more to make such breakage easier to diagnose.

AAVMF (QEMU 10.2.1) -cpu max -cpu neoverse-n1
2024.02 (Ubuntu 24.04) PASS PASS
2025.11 (Ubuntu 26.04) hang before BDS PASS
  • Log the installed QEMU/firmware package versions and the QEMU command line.
  • Print the last console line every 5 s while waiting.

The aarch64 QEMU smoke test has failed since ubuntu-latest moved to
Ubuntu 26.04. Its AAVMF 2025.11 firmware hangs after printing its
banner when the guest uses -cpu max, before it reaches BDS. The same
firmware boots with named models such as cortex-a57 or neoverse-n1,
and AAVMF 2024.02 from Ubuntu 24.04 boots with either.

TCG now uses neoverse-n1, which also keeps the emulated CPU the same
across QEMU versions. KVM keeps max because it needs the host CPU.
The QEMU and firmware packages come from the CI runner image, which
GitHub upgrades without a change in this repository. The aarch64 smoke
test broke this way when ubuntu-latest moved to Ubuntu 26.04, and the
versions were only visible in the apt output.
A stuck run was silent until the timeout of 300 s, and the logs only
showed up afterwards. The harness now prints the last console line every
5 s, so the log shows right away whether the firmware or the
application is stuck.
@phip1611
phip1611 added this pull request to the merge queue Nov 2, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Nov 2, 2026
@phip1611
phip1611 merged commit 770cbd2 into rust-osdev:main Nov 2, 2026
18 checks passed
@phip1611
phip1611 deleted the real-hw-test-aarch64-tcg-cpu branch November 2, 2026 17:25
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