Compact per-physical-frame metadata record.
More...
|
|
auto | load_flags (std::memory_order mo=std::memory_order::acquire) const noexcept -> u8 |
| | Atomically read flags.
|
|
auto | or_flags (u8 bits) noexcept -> void |
| | Atomically OR bits into flags (used for MCCK ff_offline / ff_suspect).
|
|
auto | order () const noexcept -> u8 |
|
auto | owner () const noexcept -> frame_owner |
| auto | set (u8 o, frame_owner ow, u8 numa=0, u8 fl=ff_none) noexcept -> void |
| | Initialize all fields in one call.
|
|
auto | set_order (u8 o) noexcept -> void |
|
auto | set_owner (frame_owner ow) noexcept -> void |
|
auto | store_flags (u8 val, std::memory_order mo=std::memory_order::release) noexcept -> void |
| | Atomically write flags (used by set() and paths that already hold the zone lock).
|
|
|
u8 | _r0 {0} |
|
u16 | _r1 {0} |
|
std::atomic< u8 > | flags {0} |
|
u8 | numa_node {0} |
| | NUMA node that owns this frame for free, rollback, and PCP placement.
|
|
std::atomic< u32 > | object_generation {0} |
| | SCOMS generation paired with object_id.
|
|
std::atomic< u32 > | object_id {scoms::kobject::KOBJECT_ID_INVALID} |
|
std::atomic< u8 > | order_owner {0} |
|
std::atomic< u16 > | refcount {0} |
| | Accessed exclusively via __atomic* builtins in pmm.cxxm.
|
Compact per-physical-frame metadata record.
◆ set()
| auto zxfoundation::memory::pmm::frame_desc::set |
( |
u8 | o, |
|
|
frame_owner | ow, |
|
|
u8 | numa = 0, |
|
|
u8 | fl = ff_none )->void |
|
inlineexportnoexcept |
Initialize all fields in one call.
- Parameters
-
| [in] | o | Buddy order (0–MAX_ORDER). |
| [in] | ow | Owning subsystem. |
| [in] | numa | Owning NUMA node for allocator free, rollback, and local-cache policy. |
| [in] | fl | Initial frame_flags bitmask. |
The documentation for this struct was generated from the following file: