Skip to content

Add UFFD snapshot pager#262

Draft
sjmiller609 wants to merge 5 commits into
mainfrom
hypeship/uffd-pager-v2
Draft

Add UFFD snapshot pager#262
sjmiller609 wants to merge 5 commits into
mainfrom
hypeship/uffd-pager-v2

Conversation

@sjmiller609
Copy link
Copy Markdown
Collaborator

@sjmiller609 sjmiller609 commented Jun 1, 2026

Summary

  • adds a config-gated Firecracker UFFD memory backend for snapshot restore
  • starts a per-restore UFFD pager session backed by the snapshot memory file and an optional shared page cache
  • applies resume-network mailbox updates through UFFD overlay pages so restore does not mutate the backing memory file
  • shards the pager cache and tracks pager timing counters for page-fault, lookup, backing-read, and copy latency

Tests

  • go test ./lib/hypervisor/firecracker ./lib/uffdpager ./lib/mailbox ./lib/guest ./lib/system/guest_agent ./lib/oapi -count=1

@sjmiller609 sjmiller609 force-pushed the hypeship/uffd-pager-v2 branch from 9c706a1 to fb5341c Compare June 1, 2026 19:53
@sjmiller609 sjmiller609 changed the base branch from hypeship/fc-resume-on-load-v2 to main June 1, 2026 19:53
Comment thread cmd/api/config/config.go
Comment thread cmd/api/config/config.go
Comment thread lib/instances/firecracker_uffd.go
Comment thread lib/instances/guest_resume_network.go
Comment thread lib/uffdpager/cache.go
Comment thread lib/uffdpager/server_linux.go
Comment thread lib/uffdpager/server_linux.go Outdated
Comment thread lib/uffdpager/supervisor_linux.go
Comment thread cmd/api/config/config.go
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant