bootc-ubuntu-setup: Use fixed QEMU from Resolute - #53
Merged
Conversation
cgwalters
previously approved these changes
Sep 10, 2026
| trap cleanup EXIT | ||
|
|
||
| set +e | ||
| timeout --foreground --signal=TERM --kill-after=10s 90s \ |
Contributor
There was a problem hiding this comment.
Hmm, this is all gross. I think what we should really do is have something like bcvk ephemeral selftest --image quay.io/centos-bootc/centos-bootc:stream9, like move some core smoke testing of functionality into the binary itself.
cgwalters-bot
force-pushed
the
fix-ubuntu-qemu-virtiofs
branch
from
September 10, 2026 14:45
daa903d to
c772188
Compare
This was referenced Sep 10, 2026
cgwalters-bot
force-pushed
the
fix-ubuntu-qemu-virtiofs
branch
2 times, most recently
from
September 10, 2026 16:01
7e0c610 to
3110334
Compare
The Plucky QEMU used on Noble lacks the synchronous vhost-user notifier update needed to avoid lost virtiofs interrupts. Select Resolute's fixed emulator for virtualization jobs, including its matching iPXE ROM package so guests can actually boot. Keep this limited to Ubuntu 24.04 disposable runners: the package transaction also upgrades runtime dependencies. Exercise guest boot on the amd64 KVM runner. Since bcvk requires KVM and has no arm64 release asset, validate the installed arm64 emulator with a bounded TCG startup probe instead. Generated-by: AI Signed-off-by: Colin Walters <walters@verbum.org>
cgwalters-bot
force-pushed
the
fix-ubuntu-qemu-virtiofs
branch
from
September 10, 2026 17:05
3110334 to
818ff7e
Compare
cgwalters
approved these changes
Sep 10, 2026
Contributor
|
Ah right, I effectively bypassed the review requirement by using my bot account. Sorry about that. This is quite technically messy to handle, we'd need some database mapping between accounts. But cc e.g. @gursewak1997 for post-merge review. |
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 QEMU selected by our Ubuntu 24.04/Plucky setup lacks the synchronous vhost-user notifier update. Investigating bootc-dev/bootc#2290 produced a controlled CentOS 9 reproducer: moving virtiofs IRQ affinity stalled the unpatched emulator, while the matched patched build completed installation. The investigation and its limitations are recorded in the debug repository.
For
libvirt: trueon Ubuntu 24.04, install the fixed QEMU from Resolute, together with its matchingipxe-qemupackage. The latter is necessary: the first packaged-emulator smoke test failed before boot because its expectedefi-virtio.romwas missing. Keep Resolute at low default apt priority and explicitly request the virtualization packages. This still upgrades their runtime dependencies, including libc, on the disposable runner; it is not a standalone executable replacement.The step is explicitly limited to Ubuntu 24.04, leaving native Ubuntu 26.04 handling in #52 separate. Non-virtualization users are unchanged.
Add a bounded amd64/arm64 smoke test using the prebuilt CentOS Stream 9 image. It launches an ephemeral VM, verifies
uname -a && trueover SSH, and retains limited diagnostics before cleanup. No bootc image build is needed. SSH avoids unrelated bcvk 0.19--executeproblems uncovered during the experiment, including a false-success result when QEMU never booted.Validation
actionlint, composite shell syntax checks, and whitespace checks passed; independent AI review covered the final diff.The new shared-action/amd64/arm64 matrix is pending this PR's CI. The full PR-2290 composefs installation and reboot tuple also still needs a fresh CI run; the smoke checks establish package integration and guest execution, not that entire test.
Generated-by: AI
Implementation and tests were AI-generated. Human review and DCO signoff are still required; no Signed-off-by was added automatically.