microvm: bump cloud-hypervisor to v54.0
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 56/100
- Issue type
- Feature
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- go
- Domain
- backend, infrastructure
Research direction
Start with the pinned version in hack/microvm-assets/assemble.sh, then read manifests/microvm/sandboxconfig-microvm.yaml.tmpl and the prior upgrade in #3181 to understand the digest and SandboxConfig name changes. Check cmd/ateworker-microvm/internal/ch/prefault.go and the restore path in cmd/ateworker-microvm/restore.go; decide how to handle the new virtio-net offload defaults and update the comment about vhost-user requiring Copy. Done when the v54.0 upgrade accounts for these compatibility and restore details.
Written by the indexing model from the issue text.
Description
Substrate microVM pins CH_VER="v53.0" in hack/microvm-assets/assemble.sh. Cloud Hypervisor v54.0 ships several fixes and features that affect ateworker-microvm:
What upgrade brings
- VM Generation ID (
vmgenid, cloud-hypervisor#8907): exposes an ACPIvmgeniddevice by default onx86_64andaarch64(acpi=ononaarch64) that updates its GUID and interrupts the guest onvm.restore. This CHv feature is marked as requiredTODOincmd/ateworker-microvm/restore.go. This will enable Substrate implement faster entropy initialization forreseedGuestCRNG. - Snapshot and restore fixes: fixes short reads and writes that could truncate snapshot files or hang a restore (cloud-hypervisor#8897), preserves virtio queue indices across resume (cloud-hypervisor#8626), fixes a panic when restoring a VM with an unused virtio queue (cloud-hypervisor#8702), and speeds up vCPU state save/restore (cloud-hypervisor#8961).
vsock,vhost-user, and TAP fixes: stops replying tovsockRST packets with an RST (cloud-hypervisor#8692), releasesvsocklocal ports only to their owner (cloud-hypervisor#8612), abortsvhost-userreconnect cleanly on teardown (cloud-hypervisor#8759), and drops TX frames instead of exiting the VM when the TAP device returnsEIO(cloud-hypervisor#8723).- Host scale and seccomp: fixes
muslCPU affinity on hosts with 128 or more CPUs (cloud-hypervisor#8972), allowlists missing syscalls in the seccomp filters, and applies a seccomp filter to the main thread (cloud-hypervisor#9062).
Notes
- Bumping
CH_VERchanges thecloud-hypervisordigest inmanifests/microvm/sandboxconfig-microvm.yaml.tmpl, so theSandboxConfigname should increment (as in #3181) so existingv53.0MEMORYsnapshots fall back toROOTFSfidelity. v54.0disablesvirtio-netoffloads (offload_csum,offload_tso,offload_ufo) by default on newly created VMs (cloud-hypervisor#9041); check whetherateworker-microvmwants the new default or explicit offloads.v54.0rejectsOnDemandrestore for VMs withvhost-userdevices (cloud-hypervisor#9020).PrefaultsUnconditionallyincmd/ateworker-microvm/internal/ch/prefault.goalready selectsCopy(MemRestoreEager) for>= 53.0.0, so update its comment to note whyvhost-userrequiresCopy.
- Dominant language
- Go
- Stars
- 5.9k
- Forks
- 637
- Avg merge
- 2d 1h
- Merged PRs (30d)
- 523
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from agent-substrate/substrate
-
Clean up the ko retry testsPossibly taken A pull request linked to this issue is open or already merged. Openarea/dev-infra area/reliability area/tests kind/cleanup
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
agent-substrate/substrate#3461 ·
Maintainers usually reply within 1 day
-
egress: drop the empty-provider check in providerCredentialPossibly taken @cloudonly claimed this 3 days ago. Openarea/network kind/cleanup
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
agent-substrate/substrate#3428 ·
Maintainers usually reply within 1 day
-
kubectl-ate create actor-template -f <file> fails with useless errorPossibly taken @cloudonly claimed this 5 days ago. Openarea/cli kind/bug
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
agent-substrate/substrate#3406 ·
Maintainers usually reply within 1 day
-
k8s-credential-provider manifest is missing ate-otel-config envFrom, failing OTLP metric exports to [::1]:4317 / 127.0.0.1:4317 every 60sPossibly taken @ericcurtin claimed this 5 days ago. Openarea/dev-infra area/observability area/security kind/bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
agent-substrate/substrate#3282 ·
Maintainers usually reply within 1 day
-
filecachegc.runPass suppresses eviction logs when FreedBytes < target and consecutiveShortfalls > 3Possibly taken @ericcurtin claimed this 4 days ago. Openarea/node area/observability area/storage kind/bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
agent-substrate/substrate#3281 ·
Maintainers usually reply within 1 day
All issues in agent-substrate/substrate
Similar issues
-
[BUG] serviceenvupdater filter does not update KUBERNETES_SERVICE_HOST/PORT in init containersPossibly taken @RaphaelFakhri claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
openyurtio/openyurt#2845 ·
Maintainers usually reply within 7 days
-
enhancement good first issue help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
fix(scan): validate and normalize output format in validate-contractPossibly taken @WKr1shna claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
bug good first issue help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 70/100