Skip to content

Cherry pick "Remove platform singletons from the LVBS platform and OP-TEE shim" - #1347

Merged
Sangho Lee (sangho2) merged 9 commits into
uliteboxfrom
ulitebox-pr-1127
Sep 11, 2026
Merged

Cherry pick "Remove platform singletons from the LVBS platform and OP-TEE shim"#1347
Sangho Lee (sangho2) merged 9 commits into
uliteboxfrom
ulitebox-pr-1127

Conversation

@sangho2

Copy link
Copy Markdown
Contributor

No description provided.

@sangho2
Sangho Lee (sangho2) marked this pull request as ready for review September 11, 2026 00:22
@github-actions

Copy link
Copy Markdown

🤖 SemverChecks 🤖 ⚠️ Potential breaking API changes detected ⚠️

Click for details
--- failure method_parameter_count_changed: pub method parameter count changed ---

Description:
A publicly-visible method now takes a different number of parameters, not counting the receiver (self) parameter.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#fn-change-arity
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/method_parameter_count_changed.ron

Failed in:
  litebox_common_linux::physical_pointers::PhysMutPtr::new takes 2 parameters in /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_common_linux/src/physical_pointers.rs:103, but now takes 3 parameters in /home/runner/work/litebox/litebox/litebox_common_linux/src/physical_pointers.rs:98
  litebox_common_linux::physical_pointers::PhysMutPtr::with_contiguous_pages takes 2 parameters in /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_common_linux/src/physical_pointers.rs:146, but now takes 3 parameters in /home/runner/work/litebox/litebox/litebox_common_linux/src/physical_pointers.rs:146
  litebox_common_linux::physical_pointers::PhysMutPtr::with_usize takes 1 parameters in /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_common_linux/src/physical_pointers.rs:181, but now takes 2 parameters in /home/runner/work/litebox/litebox/litebox_common_linux/src/physical_pointers.rs:185
  litebox_common_linux::physical_pointers::PhysConstPtr::new takes 2 parameters in /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_common_linux/src/physical_pointers.rs:515, but now takes 3 parameters in /home/runner/work/litebox/litebox/litebox_common_linux/src/physical_pointers.rs:514
  litebox_common_linux::physical_pointers::PhysConstPtr::with_contiguous_pages takes 2 parameters in /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_common_linux/src/physical_pointers.rs:525, but now takes 3 parameters in /home/runner/work/litebox/litebox/litebox_common_linux/src/physical_pointers.rs:528
  litebox_common_linux::physical_pointers::PhysConstPtr::with_usize takes 1 parameters in /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_common_linux/src/physical_pointers.rs:536, but now takes 2 parameters in /home/runner/work/litebox/litebox/litebox_common_linux/src/physical_pointers.rs:543

--- failure repr_c_removed: repr(C) removed ---

Description:
repr(C) was removed from a type. This can cause its memory layout to change, breaking FFI use cases.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#repr-c-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/repr_c_removed.ron

Failed in:
  struct PhysMutPtr in /home/runner/work/litebox/litebox/litebox_common_linux/src/physical_pointers.rs:66
  struct PhysConstPtr in /home/runner/work/litebox/litebox/litebox_common_linux/src/physical_pointers.rs:500

--- failure trait_missing: pub trait removed or renamed ---

Description:
A publicly-visible trait cannot be imported by its prior path. A `pub use` may have been removed, or the trait itself may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/trait_missing.ron

Failed in:
  trait litebox_common_linux::vmap::GlobalVmapManager, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_common_linux/src/vmap.rs:126

--- failure type_const_generic_reordered: type const generics were reordered ---

Description:
A type's definition now requires a generic type parameter where a const generic previously stood. Uses of this type that supplied that const generic will be broken since a generic type is now required instead.
        ref: https://doc.rust-lang.org/reference/items/generics.html
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/type_const_generic_reordered.ron

Failed in:
  struct PhysMutPtr used to expect const ALIGN in the place of type T in /home/runner/work/litebox/litebox/litebox_common_linux/src/physical_pointers.rs:66
  struct PhysConstPtr used to expect const ALIGN in the place of type T in /home/runner/work/litebox/litebox/litebox_common_linux/src/physical_pointers.rs:500

--- failure type_generic_type_reordered: type generic types were reordered ---

Description:
A type's definition now requires a const generic parameter where a generic type previously stood. Uses of this type that supplied that generic type will be broken since a const generic is now required instead.
        ref: https://doc.rust-lang.org/reference/items/generics.html
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/type_generic_type_reordered.ron

Failed in:
  struct PhysMutPtr used to expect type V in the place of const ALIGN in /home/runner/work/litebox/litebox/litebox_common_linux/src/physical_pointers.rs:66
  struct PhysConstPtr used to expect type V in the place of const ALIGN in /home/runner/work/litebox/litebox/litebox_common_linux/src/physical_pointers.rs:500

--- failure type_mismatched_generic_lifetimes: type now takes a different number of generic lifetimes ---

Description:
A type now takes a different number of generic lifetime parameters. Uses of this type that name the previous number of parameters will be broken.
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/type_mismatched_generic_lifetimes.ron
Failed in:
  Struct PhysMutPtr (0 -> 1 lifetime params) in /home/runner/work/litebox/litebox/litebox_common_linux/src/physical_pointers.rs:66
  Struct PhysConstPtr (0 -> 1 lifetime params) in /home/runner/work/litebox/litebox/litebox_common_linux/src/physical_pointers.rs:500

--- failure auto_trait_impl_removed: auto trait no longer implemented ---

Description:
A public type has stopped implementing one or more auto traits. This can break downstream code that depends on the traits being implemented.
        ref: https://doc.rust-lang.org/reference/special-types-and-traits.html#auto-traits
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/auto_trait_impl_removed.ron

Failed in:
  type LvbsVtl1Gate is no longer UnwindSafe, in /home/runner/work/litebox/litebox/litebox_platform_lvbs/src/mshv/vsm.rs:584
  type LvbsVtl1Gate is no longer RefUnwindSafe, in /home/runner/work/litebox/litebox/litebox_platform_lvbs/src/mshv/vsm.rs:584
  type LvbsVtl0Gate is no longer UnwindSafe, in /home/runner/work/litebox/litebox/litebox_platform_lvbs/src/mshv/vsm.rs:577
  type LvbsVtl0Gate is no longer RefUnwindSafe, in /home/runner/work/litebox/litebox/litebox_platform_lvbs/src/mshv/vsm.rs:577
  type LvbsVtl0PrivilegedWriter is no longer UnwindSafe, in /home/runner/work/litebox/litebox/litebox_platform_lvbs/src/mshv/vsm.rs:597
  type LvbsVtl0PrivilegedWriter is no longer RefUnwindSafe, in /home/runner/work/litebox/litebox/litebox_platform_lvbs/src/mshv/vsm.rs:597

--- failure enum_missing: pub enum removed or renamed ---

Description:
A publicly-visible enum cannot be imported by its prior path. A `pub use` may have been removed, or the enum itself may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_missing.ron

Failed in:
  enum litebox_platform_lvbs::Vmap, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_platform_lvbs/src/lib.rs:501

--- failure function_missing: pub fn removed or renamed ---

Description:
A publicly-visible function cannot be imported by its prior path. A `pub use` may have been removed, or the function itself may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/function_missing.ron

Failed in:
  function litebox_platform_lvbs::platform_low, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_platform_lvbs/src/lib.rs:2018
  function litebox_platform_lvbs::set_platform_low, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_platform_lvbs/src/lib.rs:2008

--- failure function_parameter_count_changed: pub fn parameter count changed ---

Description:
A publicly-visible function now takes a different number of parameters.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#fn-change-arity
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/function_parameter_count_changed.ron

Failed in:
  litebox_platform_lvbs::mshv::vtl_switch::vtl_switch_init now takes 0 parameters instead of 1, in /home/runner/work/litebox/litebox/litebox_platform_lvbs/src/mshv/vtl_switch.rs:240

--- failure method_parameter_count_changed: pub method parameter count changed ---

Description:
A publicly-visible method now takes a different number of parameters, not counting the receiver (self) parameter.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#fn-change-arity
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/method_parameter_count_changed.ron

Failed in:
  litebox_platform_lvbs::mshv::vsm::LvbsVtl1Gate::mint takes 0 parameters in /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_platform_lvbs/src/mshv/vsm.rs:613, but now takes 1 parameters in /home/runner/work/litebox/litebox/litebox_platform_lvbs/src/mshv/vsm.rs:616
  litebox_platform_lvbs::mshv::vsm::LvbsVtl0Gate::mint takes 0 parameters in /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_platform_lvbs/src/mshv/vsm.rs:604, but now takes 1 parameters in /home/runner/work/litebox/litebox/litebox_platform_lvbs/src/mshv/vsm.rs:607
  litebox_platform_lvbs::mshv::vsm::LvbsVtl0PrivilegedWriter::mint takes 0 parameters in /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_platform_lvbs/src/mshv/vsm.rs:622, but now takes 1 parameters in /home/runner/work/litebox/litebox/litebox_platform_lvbs/src/mshv/vsm.rs:625

--- failure type_mismatched_generic_lifetimes: type now takes a different number of generic lifetimes ---

Description:
A type now takes a different number of generic lifetime parameters. Uses of this type that name the previous number of parameters will be broken.
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/type_mismatched_generic_lifetimes.ron
Failed in:
  Struct LvbsVtl0PrivilegedWriter (0 -> 1 lifetime params) in /home/runner/work/litebox/litebox/litebox_platform_lvbs/src/mshv/vsm.rs:597

--- failure enum_missing: pub enum removed or renamed ---

Description:
A publicly-visible enum cannot be imported by its prior path. A `pub use` may have been removed, or the enum itself may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_missing.ron

Failed in:
  enum litebox_shim_optee::Vmap, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_shim_optee/src/lib.rs:1570

--- failure feature_missing: package feature removed or renamed ---

Description:
A feature has been removed from this package's Cargo.toml. This will break downstream crates which enable that feature.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#cargo-feature-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/feature_missing.ron

Failed in:
  feature platform_lvbs in the package's Cargo.toml
  feature platform_linux_userland in the package's Cargo.toml

--- failure function_missing: pub fn removed or renamed ---

Description:
A publicly-visible function cannot be imported by its prior path. A `pub use` may have been removed, or the function itself may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/function_missing.ron

Failed in:
  function litebox_shim_optee::session::session_manager, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_shim_optee/src/session.rs:487

--- failure function_parameter_count_changed: pub fn parameter count changed ---

Description:
A publicly-visible function now takes a different number of parameters.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#fn-change-arity
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/function_parameter_count_changed.ron

Failed in:
  litebox_shim_optee::msg_handler::handle_optee_smc_args now takes 2 parameters instead of 1, in /home/runner/work/litebox/litebox/litebox_shim_optee/src/msg_handler.rs:215
  litebox_shim_optee::msg_handler::handle_optee_msg_args now takes 2 parameters instead of 1, in /home/runner/work/litebox/litebox/litebox_shim_optee/src/msg_handler.rs:338
  litebox_shim_optee::msg_handler::read_optee_msg_args_from_phys now takes 3 parameters instead of 2, in /home/runner/work/litebox/litebox/litebox_shim_optee/src/msg_handler.rs:185
  litebox_shim_optee::msg_handler::update_optee_msg_args now takes 8 parameters instead of 7, in /home/runner/work/litebox/litebox/litebox_shim_optee/src/msg_handler.rs:595
  litebox_shim_optee::idk::generate_identity_signing_key now takes 3 parameters instead of 2, in /home/runner/work/litebox/litebox/litebox_shim_optee/src/idk.rs:43
  litebox_shim_optee::msg_handler::decode_ta_request now takes 2 parameters instead of 1, in /home/runner/work/litebox/litebox/litebox_shim_optee/src/msg_handler.rs:413

--- failure function_requires_different_generic_type_params: function now requires a different number of generic type parameters ---

Description:
A function now requires a different number of generic type parameters than it used to. Uses of this function that supplied the previous number of generic types (e.g. via turbofish syntax) will be broken.
        ref: https://doc.rust-lang.org/reference/items/generics.html
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/function_requires_different_generic_type_params.ron

Failed in:
  function handle_optee_smc_args (0 -> 1 generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/msg_handler.rs:215
  function handle_optee_msg_args (0 -> 1 generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/msg_handler.rs:338
  function read_optee_msg_args_from_phys (0 -> 1 generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/msg_handler.rs:185
  function update_optee_msg_args (0 -> 1 generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/msg_handler.rs:595
  function generate_identity_signing_key (0 -> 1 generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/idk.rs:43
  function decode_ta_request (0 -> 1 generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/msg_handler.rs:413

--- failure method_parameter_count_changed: pub method parameter count changed ---

Description:
A publicly-visible method now takes a different number of parameters, not counting the receiver (self) parameter.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#fn-change-arity
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/method_parameter_count_changed.ron

Failed in:
  litebox_shim_optee::OpteeShimBuilder::new takes 0 parameters in /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_shim_optee/src/lib.rs:134, but now takes 2 parameters in /home/runner/work/litebox/litebox/litebox_shim_optee/src/lib.rs:158
  litebox_shim_optee::OpteeShimBuilder::new_with_litebox takes 2 parameters in /home/runner/work/litebox/litebox/target/semver-checks/git-ulitebox/0f80e6161884d973a46551711d43b9c4797c74be/litebox_shim_optee/src/lib.rs:140, but now takes 3 parameters in /home/runner/work/litebox/litebox/litebox_shim_optee/src/lib.rs:166

--- failure trait_requires_more_generic_type_params: trait now requires more generic type parameters ---

Description:
A trait now requires more generic type parameters than it used to. Uses of this trait that supplied the previously-required number of generic types will be broken. To fix this, consider supplying default values for newly-added generic types.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#trait-new-parameter-no-default
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/trait_requires_more_generic_type_params.ron

Failed in:
  trait OpteeShim (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/lib.rs:285
  trait LoadedProgram (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/lib.rs:432
  trait TaInstance (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:128
  trait TaInstance (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:128
  trait OpteeShimBuilder (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/lib.rs:148
  trait SessionToken (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:389
  trait SessionToken (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:389
  trait SessionManager (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:451
  trait SessionManager (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:451
  trait OpteeShimEntrypoints (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/lib.rs:75
  trait OpenSessionTarget (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:171
  trait OpenSessionTarget (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:171

--- failure type_requires_more_generic_type_params: type now requires more generic type parameters ---

Description:
A type now requires more generic type parameters than it used to. Uses of this type that supplied the previously-required number of generic types will be broken. To fix this, consider supplying default values for newly-added generic types.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#trait-new-parameter-no-default
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/type_requires_more_generic_type_params.ron

Failed in:
  Struct OpteeShim (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/lib.rs:285
  Struct LoadedProgram (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/lib.rs:432
  Struct TaInstance (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:128
  Struct TaInstance (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:128
  Struct OpteeShimBuilder (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/lib.rs:148
  Struct SessionToken (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:389
  Struct SessionToken (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:389
  Struct SessionManager (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:451
  Struct SessionManager (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:451
  Struct OpteeShimEntrypoints (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/lib.rs:75
  Enum OpenSessionTarget (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:171
  Enum OpenSessionTarget (0 -> 1 required generic types) in /home/runner/work/litebox/litebox/litebox_shim_optee/src/session.rs:171

@sangho2
Sangho Lee (sangho2) added this pull request to the merge queue Sep 11, 2026
Merged via the queue into ulitebox with commit f540b46 Sep 11, 2026
9 checks passed
@sangho2
Sangho Lee (sangho2) deleted the ulitebox-pr-1127 branch September 11, 2026 04:31
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