Expand description
This module provides an implementation of side table metadata.
Modulesยง
- global ๐
- helpers ๐
- layout ๐
- ranges ๐
- Data types for visiting metadata ranges at different granularities.
- sanity ๐
- side_
metadata_ ๐tests - spec_
defs ๐
Structsยง
- Metadata
Byte Array Ref - A byte array in side-metadata
- Side
Metadata Spec - This struct stores the specification of a side metadata bit-set. It is used as an input to the (inline) functions provided by the side metadata module.
Constantsยง
- GLOBAL_
SIDE_ METADATA_ VM_ BASE_ OFFSET - The base offset for the global side metadata available to VM bindings.
- LOCAL_
SIDE_ METADATA_ VM_ BASE_ OFFSET - The base address for the local side metadata space available to VM bindings, to be used for the per-object metadata. VM bindings must use this to avoid overlap with core internal local side metadata.
Functionsยง
- global_
side_ metadata_ base_ address - Get the runtime side metadata base address.
- global_
side_ metadata_ vm_ base_ address - The base address for the global side metadata space available to VM bindings, to be used for the per-object metadata. VM bindings must use this to avoid overlap with core internal global side metadata.
- initialize_
side_ metadata - Initialize side metadata runtime state and reserve the side metadata address range.
- side_
metadata_ offset_ after - Calculate the offset of the next side metadata spec after the given spec.
This is used to calculate the offset field in
crate::util::metadata::side_metadata::SideMetadataSpec. - vo_
bit_ side_ metadata_ addr - Base address of VO bit, public to VM bindings which may need to use this.