From 59233c8c3a4e1e019140d004571eedf541dcb897 Mon Sep 17 00:00:00 2001 From: Bill Nguyen Date: Fri, 30 Oct 2026 16:19:08 +1100 Subject: [PATCH 1/3] Updated rust-sel4 to version 6.0.0 Now that the circular dependency has been resolved. Signed-off-by: Bill Nguyen --- Cargo.lock | 60 +++++++++++++++++++++++++++--------------------------- Cargo.toml | 4 ++-- 2 files changed, 32 insertions(+), 32 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 204eec53e..5982542be 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -449,7 +449,7 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "sel4" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "cfg-if", "sel4-config", @@ -459,7 +459,7 @@ dependencies = [ [[package]] name = "sel4-alloca" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "cfg-if", ] @@ -467,7 +467,7 @@ dependencies = [ [[package]] name = "sel4-bitfield-ops" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "rustversion", ] @@ -475,12 +475,12 @@ dependencies = [ [[package]] name = "sel4-build-env" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" [[package]] name = "sel4-capdl-initializer" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "log", "rkyv", @@ -498,7 +498,7 @@ dependencies = [ [[package]] name = "sel4-capdl-initializer-types" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "miniz_oxide", "rkyv", @@ -510,7 +510,7 @@ dependencies = [ [[package]] name = "sel4-capdl-initializer-types-derive" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "proc-macro2", "quote", @@ -520,7 +520,7 @@ dependencies = [ [[package]] name = "sel4-config" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "prettyplease 0.3.0", "proc-macro2", @@ -534,7 +534,7 @@ dependencies = [ [[package]] name = "sel4-config-data" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "sel4-build-env", "sel4-config-types", @@ -544,7 +544,7 @@ dependencies = [ [[package]] name = "sel4-config-macros" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "fallible-iterator", "proc-macro2", @@ -557,7 +557,7 @@ dependencies = [ [[package]] name = "sel4-config-types" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "serde", ] @@ -565,12 +565,12 @@ dependencies = [ [[package]] name = "sel4-ctors-dtors" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" [[package]] name = "sel4-dlmalloc" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "dlmalloc", "lock_api", @@ -579,17 +579,17 @@ dependencies = [ [[package]] name = "sel4-immediate-sync-once-cell" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" [[package]] name = "sel4-immutable-cell" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" [[package]] name = "sel4-initialize-tls" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "cfg-if", "sel4-alloca", @@ -598,7 +598,7 @@ dependencies = [ [[package]] name = "sel4-logging" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "lock_api", "log", @@ -607,12 +607,12 @@ dependencies = [ [[package]] name = "sel4-no-allocator" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" [[package]] name = "sel4-panicking" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "cfg-if", "sel4-immediate-sync-once-cell", @@ -623,12 +623,12 @@ dependencies = [ [[package]] name = "sel4-panicking-env" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" [[package]] name = "sel4-phdrs" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "sel4-phdrs-constants", ] @@ -636,12 +636,12 @@ dependencies = [ [[package]] name = "sel4-phdrs-constants" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" [[package]] name = "sel4-phdrs-patched" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "sel4-phdrs", "sel4-rodata-static", @@ -650,12 +650,12 @@ dependencies = [ [[package]] name = "sel4-rodata-static" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" [[package]] name = "sel4-root-task" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "sel4", "sel4-dlmalloc", @@ -670,7 +670,7 @@ dependencies = [ [[package]] name = "sel4-root-task-macros" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "proc-macro2", "quote", @@ -680,7 +680,7 @@ dependencies = [ [[package]] name = "sel4-runtime-common" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "cfg-if", "sel4", @@ -696,12 +696,12 @@ dependencies = [ [[package]] name = "sel4-stack" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" [[package]] name = "sel4-sync" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "lock_api", "sel4", @@ -711,7 +711,7 @@ dependencies = [ [[package]] name = "sel4-sys" version = "0.1.0" -source = "git+https://github.com/seL4/rust-sel4?rev=3468529ba4b42e95b2a812ad972060c449bafffe#3468529ba4b42e95b2a812ad972060c449bafffe" +source = "git+https://github.com/seL4/rust-sel4?rev=c819c27b076130cba9821c4555f23773e4b0bffd#c819c27b076130cba9821c4555f23773e4b0bffd" dependencies = [ "bindgen", "glob", diff --git a/Cargo.toml b/Cargo.toml index cbef38578..fe990f045 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -13,11 +13,11 @@ members = [ [workspace.dependencies.sel4-capdl-initializer] git = "https://github.com/seL4/rust-sel4" -rev = "3468529ba4b42e95b2a812ad972060c449bafffe" +rev = "c819c27b076130cba9821c4555f23773e4b0bffd" [workspace.dependencies.sel4-capdl-initializer-types] git = "https://github.com/seL4/rust-sel4" -rev = "3468529ba4b42e95b2a812ad972060c449bafffe" +rev = "c819c27b076130cba9821c4555f23773e4b0bffd" [profile.release.package.microkit-tool] strip = true From f0fe43f24e289531ebd4bf639576b03d13547a25 Mon Sep 17 00:00:00 2001 From: Bill Nguyen Date: Wed, 28 Oct 2026 20:18:52 +1100 Subject: [PATCH 2/3] Added release notes for Microkit 2.4.0 Per title. Signed-off-by: Bill Nguyen --- CHANGES.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index 3c004a4c6..dd4ea2ef6 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,5 +1,33 @@ # Revision History for Microkit +## Release 2.4.0 + +This release contains security fixes, a bug fix, and an seL4 update. +This release is breaking. + +### Breaking changes + +* seL4 has been updated from 16.0.0 to 17.0.0, which includes breaking + changes for virtual machines. Please see the + [kernel's changelog](https://github.com/seL4/seL4/releases/tag/17.0.0) + for upgrade notes. + +### Security + +* Reply capabilities no longer have grant reply permission. Previously a + server could send capabilities over a reply. +* PDs no longer get their parent's fault endpoint capability. Previously, + in 2.3.1, a PD could send its parent fake faults with arbitrary messages. + In 2.3.0 and earlier, a PD could receive, and so consume, fault IPCs + meant for the parent. + +### Bug fixes + +* VMs on x86-64 now work with more than 1 VM per system and in the SMP + configuration of `x86_64_generic_vtx`. This was a known issue in 2.3.1 + and earlier, caused by a bug in seL4 that was fixed in + [PR 1732](https://github.com/seL4/seL4/pull/1732). + ## Release 2.3.1 This release contains a security fix, various bug fixes, and new board support. From c1ef5b3554b186529ae535aab6544e5fc862f04f Mon Sep 17 00:00:00 2001 From: Bill Nguyen Date: Wed, 28 Oct 2026 20:30:52 +1100 Subject: [PATCH 3/3] Release 2.4.0 Commit for release tag Signed-off-by: Bill Nguyen --- CHANGES.md | 2 +- Cargo.lock | 4 ++-- VERSION | 2 +- docs/manual.md | 2 +- initialiser/Cargo.toml | 2 +- tool/microkit/Cargo.toml | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index dd4ea2ef6..e09a480d9 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -2,7 +2,7 @@ ## Release 2.4.0 -This release contains security fixes, a bug fix, and an seL4 update. +This release contains security and bug fixes. This release is breaking. ### Breaking changes diff --git a/Cargo.lock b/Cargo.lock index 5982542be..b42341e63 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -135,7 +135,7 @@ checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" [[package]] name = "initialiser" -version = "2.3.1-dev" +version = "2.4.0" dependencies = [ "sel4-capdl-initializer", ] @@ -194,7 +194,7 @@ checksum = "88904434abc2901f197fe8cc55f0445e7ded921dba5911dad2e2b39b48e663c4" [[package]] name = "microkit-tool" -version = "2.3.1-dev" +version = "2.4.0" dependencies = [ "rkyv", "roxmltree", diff --git a/VERSION b/VERSION index 32d165638..197c4d5c2 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.3.1-dev +2.4.0 diff --git a/docs/manual.md b/docs/manual.md index ffc78578b..1df6ecf86 100644 --- a/docs/manual.md +++ b/docs/manual.md @@ -4,7 +4,7 @@ --> --- -title: Microkit User Manual (v2.3.1-dev) +title: Microkit User Manual (v2.4.0) documentclass: article classoption: - english diff --git a/initialiser/Cargo.toml b/initialiser/Cargo.toml index 9490c6993..1cc903eac 100644 --- a/initialiser/Cargo.toml +++ b/initialiser/Cargo.toml @@ -6,7 +6,7 @@ [package] name = "initialiser" -version = "2.3.1-dev" +version = "2.4.0" edition = "2021" rust-version = "1.88.0" diff --git a/tool/microkit/Cargo.toml b/tool/microkit/Cargo.toml index 1c50c7dd5..7413f64ed 100644 --- a/tool/microkit/Cargo.toml +++ b/tool/microkit/Cargo.toml @@ -6,7 +6,7 @@ [package] name = "microkit-tool" -version = "2.3.1-dev" +version = "2.4.0" edition = "2021" rust-version = "1.95.0"