From 307f19b3e4d1f37271eaa0463a17c4f7d8a48dc3 Mon Sep 17 00:00:00 2001 From: danbugs Date: Wed, 24 Jun 2026 17:55:40 +0000 Subject: [PATCH] ci: point kraft.yaml at unikraft fork with demand-page heap fix Temporarily point all examples' unikraft source at danbugs/unikraft:perf/demand-page-heap to validate the boot.c heap unmap fix across all examples. This branch adds a uk_paging_page_unmap call after uk_vma_map_anon in heap_init(), tearing down boot-provided identity-mapped PTEs so demand paging works correctly. Reduces snapshot size from 3.0 GiB to 654 MiB for Python guests. Signed-off-by: danbugs --- examples/dotnet-http/kraft.yaml | 4 ++-- examples/dotnet-nativeaot/kraft.yaml | 4 ++-- examples/dotnet/kraft.yaml | 4 ++-- examples/go-http/kraft.yaml | 4 ++-- examples/go/kraft.yaml | 4 ++-- examples/helloworld-c/kraft.yaml | 4 ++-- examples/hostfs-posix-c/kraft.yaml | 4 ++-- examples/hostfs-posix-py/kraft.yaml | 4 ++-- examples/multifn-c/kraft.yaml | 4 ++-- examples/networking-py/kraft.yaml | 4 ++-- examples/nodejs/kraft.yaml | 4 ++-- examples/powershell/kraft.yaml | 4 ++-- examples/python-agent-driver/kraft.yaml | 4 ++-- examples/python-agent/kraft.yaml | 4 ++-- examples/python-tools/kraft.yaml | 4 ++-- examples/python/kraft.yaml | 4 ++-- examples/rust/kraft.yaml | 4 ++-- examples/shell/kraft.yaml | 4 ++-- 18 files changed, 36 insertions(+), 36 deletions(-) diff --git a/examples/dotnet-http/kraft.yaml b/examples/dotnet-http/kraft.yaml index 37c6ed0..2b5c474 100644 --- a/examples/dotnet-http/kraft.yaml +++ b/examples/dotnet-http/kraft.yaml @@ -2,8 +2,8 @@ specification: '0.6' name: dotnet-http-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: # Platform CONFIG_PLAT_HYPERLIGHT: 'y' diff --git a/examples/dotnet-nativeaot/kraft.yaml b/examples/dotnet-nativeaot/kraft.yaml index f5c2b2d..caf87fa 100644 --- a/examples/dotnet-nativeaot/kraft.yaml +++ b/examples/dotnet-nativeaot/kraft.yaml @@ -2,8 +2,8 @@ specification: '0.6' name: dotnet-nativeaot-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: CONFIG_PLAT_HYPERLIGHT: 'y' CONFIG_PAGING: 'n' diff --git a/examples/dotnet/kraft.yaml b/examples/dotnet/kraft.yaml index b2b0a3b..afca787 100644 --- a/examples/dotnet/kraft.yaml +++ b/examples/dotnet/kraft.yaml @@ -2,8 +2,8 @@ specification: '0.6' name: dotnet-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: # Platform CONFIG_PLAT_HYPERLIGHT: 'y' diff --git a/examples/go-http/kraft.yaml b/examples/go-http/kraft.yaml index d06b787..71a16f0 100644 --- a/examples/go-http/kraft.yaml +++ b/examples/go-http/kraft.yaml @@ -2,8 +2,8 @@ specification: '0.6' name: go-http-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: # Platform CONFIG_PLAT_HYPERLIGHT: 'y' diff --git a/examples/go/kraft.yaml b/examples/go/kraft.yaml index 547d6d7..0787b3d 100644 --- a/examples/go/kraft.yaml +++ b/examples/go/kraft.yaml @@ -3,8 +3,8 @@ specification: '0.6' name: go-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: # Platform CONFIG_PLAT_HYPERLIGHT: 'y' diff --git a/examples/helloworld-c/kraft.yaml b/examples/helloworld-c/kraft.yaml index 36e45f2..19d3269 100644 --- a/examples/helloworld-c/kraft.yaml +++ b/examples/helloworld-c/kraft.yaml @@ -2,8 +2,8 @@ specification: '0.6' name: helloworld-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: CONFIG_PLAT_HYPERLIGHT: 'y' CONFIG_PAGING: 'n' diff --git a/examples/hostfs-posix-c/kraft.yaml b/examples/hostfs-posix-c/kraft.yaml index d2f937f..36ab0d6 100644 --- a/examples/hostfs-posix-c/kraft.yaml +++ b/examples/hostfs-posix-c/kraft.yaml @@ -2,8 +2,8 @@ specification: '0.6' name: hostfs-posix-c-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: # Platform CONFIG_PLAT_HYPERLIGHT: 'y' diff --git a/examples/hostfs-posix-py/kraft.yaml b/examples/hostfs-posix-py/kraft.yaml index ec17d14..35c813a 100644 --- a/examples/hostfs-posix-py/kraft.yaml +++ b/examples/hostfs-posix-py/kraft.yaml @@ -2,8 +2,8 @@ specification: '0.6' name: hostfs-posix-py-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: # Platform CONFIG_PLAT_HYPERLIGHT: 'y' diff --git a/examples/multifn-c/kraft.yaml b/examples/multifn-c/kraft.yaml index cc98096..87498fd 100644 --- a/examples/multifn-c/kraft.yaml +++ b/examples/multifn-c/kraft.yaml @@ -2,8 +2,8 @@ specification: '0.6' name: multifn-c-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: CONFIG_PLAT_HYPERLIGHT: 'y' CONFIG_PAGING: 'n' diff --git a/examples/networking-py/kraft.yaml b/examples/networking-py/kraft.yaml index 67531a4..d7d1ab6 100644 --- a/examples/networking-py/kraft.yaml +++ b/examples/networking-py/kraft.yaml @@ -2,8 +2,8 @@ specification: '0.6' name: networking-py-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: # Platform CONFIG_PLAT_HYPERLIGHT: 'y' diff --git a/examples/nodejs/kraft.yaml b/examples/nodejs/kraft.yaml index 4639e1a..3fbbb50 100644 --- a/examples/nodejs/kraft.yaml +++ b/examples/nodejs/kraft.yaml @@ -3,8 +3,8 @@ specification: '0.6' name: nodejs-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: # Platform CONFIG_PLAT_HYPERLIGHT: 'y' diff --git a/examples/powershell/kraft.yaml b/examples/powershell/kraft.yaml index 8d3bcc9..0e43f5e 100644 --- a/examples/powershell/kraft.yaml +++ b/examples/powershell/kraft.yaml @@ -2,8 +2,8 @@ specification: '0.6' name: powershell-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: # Platform CONFIG_PLAT_HYPERLIGHT: 'y' diff --git a/examples/python-agent-driver/kraft.yaml b/examples/python-agent-driver/kraft.yaml index 425b327..633fd50 100644 --- a/examples/python-agent-driver/kraft.yaml +++ b/examples/python-agent-driver/kraft.yaml @@ -2,8 +2,8 @@ specification: '0.6' name: python-agent-driver-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: CONFIG_PLAT_HYPERLIGHT: 'y' CONFIG_PAGING: 'n' diff --git a/examples/python-agent/kraft.yaml b/examples/python-agent/kraft.yaml index d627dc3..9aa7177 100644 --- a/examples/python-agent/kraft.yaml +++ b/examples/python-agent/kraft.yaml @@ -2,8 +2,8 @@ specification: '0.6' name: python-agent-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: # Platform CONFIG_PLAT_HYPERLIGHT: 'y' diff --git a/examples/python-tools/kraft.yaml b/examples/python-tools/kraft.yaml index 53de59f..5a5012c 100644 --- a/examples/python-tools/kraft.yaml +++ b/examples/python-tools/kraft.yaml @@ -3,8 +3,8 @@ specification: '0.6' name: python-tools-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: # Platform CONFIG_PLAT_HYPERLIGHT: 'y' diff --git a/examples/python/kraft.yaml b/examples/python/kraft.yaml index dba5357..127a20c 100644 --- a/examples/python/kraft.yaml +++ b/examples/python/kraft.yaml @@ -3,8 +3,8 @@ specification: '0.6' name: python-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: # Platform CONFIG_PLAT_HYPERLIGHT: 'y' diff --git a/examples/rust/kraft.yaml b/examples/rust/kraft.yaml index 962a7e9..8edbb75 100644 --- a/examples/rust/kraft.yaml +++ b/examples/rust/kraft.yaml @@ -3,8 +3,8 @@ specification: '0.6' name: rust-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: # Platform CONFIG_PLAT_HYPERLIGHT: 'y' diff --git a/examples/shell/kraft.yaml b/examples/shell/kraft.yaml index 242745b..6c3b6a9 100644 --- a/examples/shell/kraft.yaml +++ b/examples/shell/kraft.yaml @@ -3,8 +3,8 @@ specification: '0.6' name: shell-hyperlight unikraft: - source: https://github.com/unikraft/unikraft.git - version: plat-hyperlight + source: https://github.com/danbugs/unikraft.git + version: perf/demand-page-heap kconfig: # Platform CONFIG_PLAT_HYPERLIGHT: 'y'