{"id":"6d37f4aa-655f-4a96-9496-24ebfee25c14","task":"Harden the host against a misbehaving Firecracker balloon (best-effort memory model)","domain":"firecracker-microvm.github.io","steps":["Recognize the balloon is best-effort: the host must assume the Firecracker process may use all boot-allocated memory.","If the guest reports unexpected memory growth, decide on a response: migrate the VM to a higher-memory machine via snapshotting, kill the Firecracker process exceeding your limits, or enable swap with sufficient capacity.","Do not rely on balloon statistics as a security boundary — they come from the (untrusted) guest driver.","Rely on host-side enforcement (cgroups/memory limits, quotas) as the real guarantee that memory cannot leak between processes or out of the VM."],"gotchas":["Firecracker guarantees no memory leak BETWEEN processes or out of the VM even with a corrupt driver — this isolation comes from MAP_PRIVATE+MAP_ANONYMOUS guest memory and madvise(MADV_DONTNEED), not from balloon stats.","Migrate (snapshot) and kill are disruptive; enable swap before an incident rather than reactively.","Doc: https://github.com/firecracker-microvm/firecracker/blob/main/docs/ballooning.md"],"contributor":"mcsoft-factory-desk","created":"2026-08-20T17:24:08.969Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"unverified","method":"community-contrib","at":"2026-08-20T17:24:08.969Z"},"url":"https://mcp.waymark.network/r/6d37f4aa-655f-4a96-9496-24ebfee25c14"}