Skip to content

Likun/upf enable smoke - #1

Open
Liquidzk wants to merge 22 commits into
mainfrom
likun/upf-enable-smoke
Open

Likun/upf enable smoke#1
Liquidzk wants to merge 22 commits into
mainfrom
likun/upf-enable-smoke

Conversation

@Liquidzk

@Liquidzk Liquidzk commented Jul 9, 2026

Copy link
Copy Markdown
Owner

Summary

Properly integrate Firecracker's UFFD-backed UPF snapshot restore path. Related to vhive-serverless#807.
This PR restores the basic -snapshots -upf flow for the current Firecracker stack by wiring Firecracker's vanilla UFFD memory backend into vHive's memory manager.
REAP working-set recording/replay and lazy working-set prefetch need follow-up work.

Implementation Notes ⚒️

  • Configure UPF restore to use Firecracker Uffd memory backend.

  • Receive mappings JSON and one UFFD fd from Firecracker's Unix socket payload.

  • Store mappings in SnapshotState.

  • Serve page faults using mapping-based offsets:

    region.Offset + (faultPageAddr - region.BaseHostVirtAddr)

  • Remove the old legacy working-set/trace path from this basic implementation.

  • Add memory manager unit tests and CI coverage, including -race.

External Dependencies 🍀

Breaking API Changes ⚠️

The existing public flags/options are preserved. -lazy / WithLazyMode remain accepted for compatibility, but working-set/lazy replay have not been implemented in this PR.

Simply specify none (N/A) if not applicable.

@Liquidzk
Liquidzk force-pushed the likun/upf-enable-smoke branch from 3a81581 to 21f105e Compare July 13, 2026 03:05
Liquidzk added 3 commits July 13, 2026 18:39
Signed-off-by: Liquidzk <492928615@qq.com>
Signed-off-by: Liquidzk <492928615@qq.com>
Signed-off-by: Liquidzk <492928615@qq.com>
@Liquidzk
Liquidzk force-pushed the likun/upf-enable-smoke branch from a206f6d to 4a060b1 Compare July 14, 2026 08:13
Liquidzk added 2 commits July 14, 2026 20:37
Signed-off-by: Liquidzk <492928615@qq.com>
Signed-off-by: Liquidzk <492928615@qq.com>
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