From 39e92449123a909c1ad9176db1c34f4fc87c58af Mon Sep 17 00:00:00 2001 From: AprilNEA Date: Fri, 7 Aug 2026 14:17:12 +0800 Subject: [PATCH] feat(kernel): source the microVM guest kernel from the arcboxlabs/kernel microvm flavor (CORE-79) Replace the stock Firecracker CI vmlinux (6.1.155, built to run their whole test matrix, ~1.7 s to init under nested virt) with the dedicated minimal sandbox kernel built by arcboxlabs/kernel (FLAVOR=microvm). Same bundle shape (name=vmlinux, install_dir=kernel), new immutable CDN version key, so rollback is reverting this pin. Firecracker restore never re-reads the kernel file, so existing template snapshots keep restoring unchanged. x86_64 stays on the FC CI kernel until an x86 microvm config exists. --- upstream.toml | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/upstream.toml b/upstream.toml index 9045f7b..3de68c4 100644 --- a/upstream.toml +++ b/upstream.toml @@ -112,15 +112,25 @@ extract = "release-v1.16.1-x86_64/jailer-v1.16.1-x86_64" # --- Guest kernel image (for Firecracker microVMs) --- # Placed at /arcbox/kernel/vmlinux inside the guest VM. +# +# arm64 is the arcboxlabs/kernel `microvm` flavor (CORE-79): a dedicated +# minimal sandbox kernel (virtio-mmio only, no PCI/ACPI/EFI/netfilter) +# targeting kernel-entry -> PID 1 in the 200-300 ms class under nested +# virt. The version string keys the immutable CDN path +# (bin/vmlinux/{version}/{arch}/vmlinux), so rollback = revert this pin. +# +# x86_64 stays on the stock Firecracker CI kernel until an x86 microvm +# config lands (Firecracker x86_64 boots an ELF vmlinux and needs +# VIRTIO_MMIO_CMDLINE_DEVICES + kvmclock). [[binaries]] name = "vmlinux" -version = "6.1.155" +version = "0.0.23-microvm" install_dir = "kernel" [binaries.source.arm64] format = "binary" -url = "https://s3.amazonaws.com/spec.ccfc.min/firecracker-ci/v1.14/aarch64/vmlinux-6.1.155" +url = "https://github.com/arcboxlabs/kernel/releases/download/v0.0.23/microvm-kernel-arm64" [binaries.source.x86_64] format = "binary"