Skip to main content

FrameMeta

Type Alias FrameMeta 

Source
pub type FrameMeta = MetaSlot;
Expand description

Backwards-compatible name for MetaSlot.

Aliased Type§

#[repr(C)]
pub struct FrameMeta { pub free_link: FreeListLink, pub vtable: Atomic<u64>, pub flags: Atomic<u32>, pub order: Atomic<u8>, _reserved0: [u8; 3], pub refcount: Atomic<u32>, pub generation: Atomic<u32>, pub guard: Atomic<u32>, pub meta_aux: Atomic<u32>, pub _reserved_tail: [u8; 16], }

Fields§

§free_link: FreeListLink§vtable: Atomic<u64>

*const FrameMetaVtable as bits; 0 means DEFAULT_FRAME_META_VTABLE.

§flags: Atomic<u32>§order: Atomic<u8>§_reserved0: [u8; 3]

Padding so refcount stays 4-byte aligned; if order widens or new fields are added, re-check META_SLOT_REFCOUNT_BYTE_OFFSET / MetaSlot::REFCOUNT_BYTE_OFFSET.

§refcount: Atomic<u32>§generation: Atomic<u32>

Bumps each time the frame is successfully claimed from the buddy free list (see MetaSlot::note_new_allocation_epoch).

§guard: Atomic<u32>

Kernel-owned guard bits (meta_guard); independent of frame_flags.

§meta_aux: Atomic<u32>

Low 16 bits: owner CPU id hint (issue #38); upper bits reserved / NUMA placeholder.

§_reserved_tail: [u8; 16]