You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
microvm: at a platform restore, attach an aggregate export to the dormant filesystem slot #540
Goal. A platform template captures a dormant filesystem slot. At restore, OpenVMM attaches to it either one directory, as today, or an aggregate of host directories and files, validated as at a cold launch, before any vCPU runs. Clones then export what cold boots export.
Today (NVX's pin, 79a501b6):
The slot's backend is an aggregate, one directory or dormant (openvmm/openvmm_entry/src/microvm/config.rs:570-628). A cold launch validates an aggregate's children: their kinds, access modes, hidden, re-exposed and writable paths, the owner mode, and limits (openvmm/openvmm_entry/src/cli_args/microvm.rs:441-542, :1066-1117).
A snapshot that captured an aggregate restores only with the same children, names and modes (openvmm/openvmm_entry/src/microvm/filesystem.rs:997-1027).
A dormant slot accepts only --mount at restore (:983-995), and a test checks that an aggregate is refused (:2008-2017).
Expected behavior:
At a restore of a platform snapshot whose slot is dormant, --mount-aggregate with its --mount-child options, and their --mount-deny, --mount-allow, --mount-write and --mount-owner policy, attach an aggregate to the slot, validated as at a cold launch.
No device is added: the slot's device ID, tag, MMIO, IRQ, features and queues stay as captured. The saved command line doesn't change, and OpenVMM exposes no layout: the guest learns of the export over its own control channel.
--mount, or no attachment, behaves as today. A snapshot that captured an attachment keeps its exact-match rules, and workload and instance snapshots are unchanged.
Refused: an aggregate on a snapshot without the dormant slot's version, and children that a cold launch would refuse.
Tests: VMM tests that restore a dormant slot with an aggregate of directory and file children, with mixed modes and policies; invalid aggregates, refused; snapshots with a captured attachment, and older snapshots, unchanged.
NVX pin: a PR that moves NVX's OpenVMM pin and adds a VMM-level snapshot scenario, as for the other changes in #835.
Replaces this issue's earlier plan: no guest-observable layout, no attachment receipts (#548), and no dependency on #543 (closed) or #544 (the performance workstream).
changed the title [-]OpenVMM prerequisite: attach aggregate virtio-fs to a dormant platform snapshot slot[/-][+]microvm: at a platform restore, attach an aggregate export to the dormant filesystem slot[/+]on Oct 24, 2026
Activity
WIP: aggregate virtio-fs on the dormant slot at restore (not for merge)
[-]OpenVMM prerequisite: attach aggregate virtio-fs to a dormant platform snapshot slot[/-][+]microvm: at a platform restore, attach an aggregate export to the dormant filesystem slot[/+]virtiofs: test that a dormant slot's state restores into an aggregate
microVM: let a platform restore attach an aggregate to a dormant slot
openvmm: let a platform restore attach an aggregate to a dormant slot
doc: map the aggregate export commits in the OpenVMM roadmap
doc: describe the aggregate export of a platform restore
scripts: test aggregate exports at platform restores
openvmm: let a platform restore attach an aggregate to a dormant slot
doc: map the aggregate export commits in the OpenVMM roadmap
doc: describe the aggregate export of a platform restore
scripts: test aggregate exports at platform restores
virtiofs: test that a dormant slot's state restores into an aggregate
microVM: let a platform restore attach an aggregate to a dormant slot
openvmm: let a platform restore attach an aggregate to a dormant slot
doc: map the aggregate export commits in the OpenVMM roadmap
doc: describe the aggregate export of a platform restore
scripts: test aggregate exports at platform restores
openvmm: let a platform restore attach an aggregate to a dormant slot
doc: map the aggregate export commits in the OpenVMM roadmap
doc: describe the aggregate export of a platform restore
scripts: test aggregate exports at platform restores
nvx-rs: attach a clone's export as an aggregate, as a cold launch does
nvx-rs: attach a clone's export as an aggregate, as a cold launch does
nvx-rs: attach a clone's export as an aggregate, as a cold launch does