Data Structures | |
| struct | zxfoundation::dgp::memory_contract::contract_request |
| Memory request submitted to the clean-core contract. More... | |
| struct | zxfoundation::dgp::memory_contract::contract_result |
| DGP-authorized policy output attached to VM regions and DAT operations. More... | |
Enumerations | |
| enum class | zxfoundation::dgp::memory_contract::invalidation_scope : u8 { none = 0 , local_cpu = 1 , address_space = 2 , single_page = 3 , global = 4 , alb_global = 5 } |
| Translation invalidation scope required by an authorized memory operation. | |
| enum class | zxfoundation::dgp::memory_contract::memory_access : u32 { none = 0U , read = 1U << 0 , write = 1U << 1 , execute = 1U << 2 , share = 1U << 3 } |
| Access intent for a DGP-validated memory operation. | |
| enum class | zxfoundation::dgp::memory_contract::memory_scope : u8 { private_domain = 0 , portal_shared = 1 , nucleus = 2 } |
| Address-space scope affected by a memory operation. | |
| enum class | zxfoundation::dgp::memory_contract::numa_policy : u8 { deterministic_fallback = 0 , strict_node = 1 , interleave = 2 } |
| NUMA selection behavior for DGP memory policy. | |
Functions | |
| auto | zxfoundation::dgp::memory_contract::authorize_mapping (const contract_request &request) noexcept -> std::expected< contract_result, lib::kernel_error > |
| Authorize creation of a VM mapping authority record. | |
| auto | zxfoundation::dgp::memory_contract::authorize_protect (const contract_request &request, arch::s390x::mmu::page_prot old_prot) noexcept -> std::expected< contract_result, lib::kernel_error > |
| Authorize a VM protection change. | |
| auto | zxfoundation::dgp::memory_contract::authorize_unmap (const contract_request &request) noexcept -> std::expected< contract_result, lib::kernel_error > |
| Authorize removal of a VM mapping authority record. | |
| auto | zxfoundation::dgp::memory_contract::contract_generation () noexcept -> u64 |
| Return the current DGP memory-policy generation. | |
| auto | zxfoundation::dgp::memory_contract::generation_bump () noexcept -> u64 |
| Advance the global memory-contract generation. | |
| constexpr auto | zxfoundation::dgp::memory_contract::is_page_aligned (u64 address) noexcept -> bool |
| Test that an address is aligned to the DGP page size. | |
| constexpr auto | zxfoundation::dgp::memory_contract::memory_access_has (memory_access available, memory_access requested) noexcept -> bool |
| Test whether a memory-access mask carries a requested bit. | |
| constexpr auto | zxfoundation::dgp::memory_contract::operator& (memory_access lhs, memory_access rhs) noexcept -> memory_access |
| Intersect two memory access masks. | |
| constexpr auto | zxfoundation::dgp::memory_contract::operator| (memory_access lhs, memory_access rhs) noexcept -> memory_access |
| Combine two memory access masks. | |
| constexpr auto | zxfoundation::dgp::memory_contract::required_rights (memory_access access, memory_scope scope) noexcept -> dgp::isolation::isolation_rights |
| Translate an access mask into isolation rights required by the DGP policy plane. | |
| auto | zxfoundation::dgp::memory_contract::resolve_storage_key (u8 storage_key) noexcept -> std::expected< u8, lib::kernel_error > |
| Resolve a storage key value for region metadata. | |
| auto | zxfoundation::dgp::memory_contract::validate_range (u64 va_start, u64 va_end) noexcept -> std::expected< void, lib::kernel_error > |
| Validate a virtual address range before a VM or portal operation. | |
| auto | zxfoundation::dgp::memory_contract::validate_request (const contract_request &request) noexcept -> std::expected< void, lib::kernel_error > |
| Validate a complete memory-contract request. | |
| auto | zxfoundation::dgp::memory_contract::validate_storage_key (u8 storage_key) noexcept -> std::expected< void, lib::kernel_error > |
| Validate a storage key for a DGP memory request. | |
Variables | |
| memory_access | access {memory_access::none} |
| memory_access | access {memory_access::none} |
| u32 | domain_id {0} |
| u64 | generation {0} |
| invalidation_scope | invalidate {invalidation_scope::none} |
| u64 | length {0} |
| u8 | numa_node {0} |
| u8 | numa_node {0} |
| u64 | phys_start {0} |
| numa_policy | policy {numa_policy::deterministic_fallback} |
| arch::s390x::mmu::page_prot | prot {} |
| dgp::isolation::isolation_rights | required_rights {dgp::isolation::isolation_rights::none} |
| memory_scope | scope {memory_scope::private_domain} |
| memory_scope | scope {memory_scope::private_domain} |
| u8 | storage_key {0} |
| u8 | storage_key {0} |
| u64 | va_end {0} |
| u64 | va_start {0} |
Files | |
| file | zxfoundation/dgp/memory_contract.zcomponent/core.cxxm |
| DGP memory-contract adapter types, constexpr policy helpers, and validation interface. | |
| file | zxfoundation/dgp/memory_contract.zcomponent/core.cxx |
| DGP memory-contract adapter validation implementation. | |