Memory namespace dispatch handler. More...
import std;import arch.s390x.cpu.skey;import lib.error;import arch.s390x.cpu.lowcore;import zxfoundation.base.types;import zxfoundation.memory.vm;import zxfoundation.dgp.isolation.types;import zxfoundation.memory.objects;import zxfoundation.dgp.domain.types;import zxfoundation.scoms.kobject.base;import zxfoundation.sys.printk.core;import zxfoundation.memory.pmm;import arch.s390x.mmu;import zxfoundation.dgp.gate.types;import zxfoundation.memory.pmm.types;import zxfoundation.dgp.cap.types;import zxfoundation.memory.vm.types;import zxfoundation.scoms.kobject.types;import zxfoundation.dgp.authorize;import zxfoundation.dgp.cap.core;Enumerations | |
| enum class | cap_rights |
| Standard access rights usable with any capability type. | |
| enum class | cap_type |
| Discriminator for the kind of resource a capability token refers to. | |
Functions | |
| auto | zxfoundation::dgp::gate::nc_mem::detail::current_domain () noexcept -> domain::domain * |
| auto | zxfoundation::dgp::gate::nc_mem::dispatch (u32 op, u64 a0, u64 a1, u64 a2, u64 a3, u64 a4) noexcept -> u64 |
| template<mem_op Op> | |
| auto | zxfoundation::dgp::gate::nc_mem::dispatch_wrap (u64 a0, u64 a1, u64 a2, u64 a3, u64 a4) noexcept -> u64 |
| auto | zxfoundation::dgp::gate::nc_mem::detail::nc_mem_alloc (u64 a0, u64, u64, u64, u64) noexcept -> u64 |
| auto | zxfoundation::dgp::gate::nc_mem::detail::nc_mem_free (u64 a0, u64 a1, u64, u64, u64) noexcept -> u64 |
| auto | zxfoundation::dgp::gate::nc_mem::detail::nc_mem_map (u64 a0, u64 a1, u64 a2, u64 a3, u64 a4) noexcept -> u64 |
| Map an exact subrange of a capability-bound memory extent. a0 = extent cap, a1 = VA, a2 = page-aligned extent offset, a3 = size, a4 = protection bits. | |
| auto | zxfoundation::dgp::gate::nc_mem::detail::nc_mem_protect (u64 a0, u64 a1, u64 a2, u64, u64) noexcept -> u64 |
| auto | zxfoundation::dgp::gate::nc_mem::detail::nc_mem_share (u64, u64, u64, u64, u64) noexcept -> u64 |
| Retired range-less sharing gate. | |
| auto | zxfoundation::dgp::gate::nc_mem::detail::nc_mem_unmap (u64 a0, u64 a1, u64, u64, u64) noexcept -> u64 |
| auto | zxfoundation::dgp::gate::nc_mem::detail::page_align_size (u64 size, u64 &aligned_size) noexcept -> bool |
Variables | |
| static constexpr u64 | NC_ERROR = ~0ULL |
| static constexpr u64 | zxfoundation::dgp::gate::nc_mem::detail::PAGE_SIZE = 4096ULL |
Memory namespace dispatch handler.
SPDX-License-Identifier: Apache-2.0
|
noexcept |
Retired range-less sharing gate.
The legacy ABI names only a target domain and cannot carry an exact source authority or range. Cross-domain sharing must use an explicit storage-object grant once the shared-key/portal model is implemented.