COCONUT-SVSM Development Release v2026.02-devel
Jörg Rödel <[email protected]> Fri, 27 Feb 2026 09:31:20 +0100
| Newsgroups | dev.linux.lists.coconut-svsm,dev.linux.lists.linux-coco |
|---|---|
| Message-ID | <wuqjzhu7l5tdsys764jvmpp5bwdqzmkrmxluhlx7vbgxnqaqap@v2yuhews2hlo> |
Hi,
The COCONUT-SVSM development release for February is tagged and ready for
testing and wider use. The release includes 65 non-merge commits which bring
several improvements to COCONUT-SVSM.
There are no new features this time, but a lot of improvements around CI and
the core infrastructure. Highlights are:
- CI improvements. GitHub CI is now able to optionally run formal
verification on PRs.
- Fix of unsound behavior in the per-cpu code.
- Update to OpenSSL 3.5.5 for the TPM.
- Switch to Rust 1.88 as the minimal version to build COCONUT-SVSM.
- A lot of rework and improvements in the boot flow, an important step
towards a minimal stage2 loader.
Again a big THANKs to the COCONUT-SVSM community for all the contributions. The
first two releases of 2026 mark a strong start into the year for COCONUT-SVSM.
For all the nitty details of what changes the shortlog is attached.
Happy testing and hacking.
Regards,
Joerg
Full shortlog:
Carlos López (16):
mm/guestmem: fix GuestPtr trait bounds
mm/guestmem: introduce GuestPtr::try_read()
mm/guestmem: introduce UserPtr::try_read()
cpu/percpu: do not expose raw runqueue
cpu/percpu: do not expose vranges directly
cpu/percpu: fully harden against reentrancy
mm/page_visibility: add Sync for SharedBox
cpu/apic: require Sync as part of ApicAccess
cpu/irq_state: make IrqState Sync
cpu/percpu: ensure PerCpu is reentrancy-safe at compile time
repo: update packit to latest commit
insn_decode: make InsnMachineMem generic over T
insn_decode: remove dynamic dispatch from InsnMachineCtx
kernel/insn_decode: tests: fix Miri errors
kernel/mm/guestmem: tests: ignore invalid bit pattern test under Miri
fuzz: insn: provide valid pointer in TestCtx
Joerg Roedel (3):
kernel/sev: Check physical address of VMSA for 2MiB alignemnt
kernel/platform: Use PageSize conditionally
COCONUT-SVSM Release 2026.02-devel
Jon Lange (22):
stage2: allocate kernel page tables from kernel heap
svsm: remove duplicate construction of kernel page tables
kernel: simplify stage2 layout
svsm: create transition page tables for AP startup
kernel: limit low memory page tables to AP startup code
Merge pull request #928 from msft-jlange/page_tables
igvmbuilder: require tdx-stage1 for TDP
Merge pull request #881 from MelodyHuibo/reinject_irq_clear_busy
kernel: defer page validation out of stage2
kernel: allocate CPUID/secrets pages on all platforms
kernel_launch: remove platform type from launch struct
kernel: reclaim VMSA heap space when unused
kernel: remove `SvsmConfig`
igvm_params: rename `igvm_params`
boot: move boot definition crate
bootimg: implement boot image loader library
stage2: consume boot image library
svsm: move kernel initialization arguments onto the stack
Merge pull request #968 from stefano-garzarella/rust-1.88.0
Cargo.toml: add `cpudefs` to `members`
sev/ghcb: calculate page state chage page size directly
global_asm: ensure code is marked as `.text`
Jörg Rödel (14):
Merge pull request #920 from 00xc/cpu/percpu/sync-v2
Merge pull request #954 from joergroedel/boot-fix
Merge pull request #922 from 00xc/mm/guestmem/bounds
Merge pull request #952 from 00xc/repo/update-packit
Merge pull request #955 from stefano-garzarella/update-cargo-lock-zerocopy
Merge pull request #974 from 00xc/tests/miri
Merge pull request #973 from msft-jlange/ghcb_psc
Merge pull request #969 from luigix25/cleanup_launch_guest
Merge pull request #972 from msft-jlange/cargo_members
Merge pull request #959 from stefano-garzarella/cargo-hack
Merge pull request #964 from stefano-garzarella/ci-fix-cargo-v-check
Merge pull request #965 from stefano-garzarella/verification-label
Merge pull request #977 from 00xc/tests/miri
Merge pull request #978 from msft-jlange/gloabl_asm
Luigi Leonardi (2):
block: remove unnecessary Box wrapper
scripts/launch_guest: require QEMU 10.1 as minimum version
Melody Wang (1):
cpu: Make sure interrupts do not disappear
Oliver Steffen (4):
libtcgtpm/libcrt: Add stub for strpbrk()
libtcgtpm: Update OpenSSL to 3.5.5
libtcgtpm: Disable more unused algorithms for OpenSSL
libtcgtpm: Remove deprecated OpenSSL build option
Peter Fang (2):
Merge pull request #957 from msft-jlange/igvm_stage1
Merge pull request #953 from msft-jlange/bootlib
Stefano Garzarella (26):
Cargo.lock: refresh after packit zerocopy update
Merge pull request #958 from 00xc/mm/guestmem/bounds
verification: add NonNull<T> specification for Verus
github/manual-verify: check cargo-v output for errors
Add `test` crate in the workspace
verification/verus_stub: fix unresolved import
virtio-drivers: use std crates in FakeHal
virtio-drivers: fix unused variable
kernel/block: make BLOCK_DEVICE publicly visible
Makefile: add CARGO_HACK env variable to run clippy with cargo-hack
Documentation: add `Linting` section in CONTRIBUTING.md
libtcgtpm: update TPM reference implementation to fix the license
Merge pull request #960 from luigix25/cleanup_blk
Merge pull request #961 from osteffenrh/openssl-3.5.5
Merge pull request #962 from stefano-garzarella/fix-verification
Merge pull request #966 from stefano-garzarella/update-tcg-tpm-license
kernel/gdt: fix UB in GDT::drop()
Fix `uninlined_format_args` lint for Rust 1.88.0
kernel: fix `borrow_as_ptr` lint for Rust 1.88.0
kernel/vtpm: fix `manual_dangling_ptr` lint for Rust 1.88.0
Cargo.toml: remove deprecated `clippy::match_on_vec_items` lint
Update Rust toolchain to 1.88.0
Update bytes to 1.11.1
Update time to 0.3.47
Merge pull request #956 from stefano-garzarella/fix-cargo-audit-bytes
github/manual-verify: trigger on verification label