3.5. Installation¶
3.5.1. Claim sets¶
A claim set is an array of memory_claim_t entries.
-
type memory_claim_t¶
The
typedefforxen_memory_claim, used for passing an array of claim set entries to the hypervisor.
-
struct xen_memory_claim¶
Underlying structure for passing claim sets to the hypervisor.
This structure represents an individual claim entry in a claim set. It specifies the number of pages claimed and the target of the claim, which can be a specific NUMA node or a special value for host-wide claims.
The structure includes padding for future expansion. It is important to zero-initialise it or use designated initialisers to ensure forward compatibility. Members are as follows:
-
uint64_aligned_t pages¶
Number of pages for this claim entry.
-
uint32_t cmd¶
Command field reserved for future use. It must be initialised to 0 for forward compatibility.
-
uint32_t target¶
The target of the claim entry. It can be a special selector, which could in the future include flags and additional information, or simply a NUMA node ID.
See Hypercall API for the defined special selectors and their semantics.
-
uint64_aligned_t pages¶
-
type uint64_aligned_t¶
64-bit unsigned integer type with alignment requirements suitable for representing page counts in the claim structure.
3.5.2. Claim set installation¶
Claim set installation is invoked via XEN_DOMCTL_claim_memory, and
domain_install_claim_set() implements the claim set installation logic.
See Accounting for details on the claims accounting state.
3.5.3. Legacy claim installation¶
Legacy claims are set via the XENMEM_claim_pages hypercall command.
Note
The legacy path is deprecated.
Use XEN_DOMCTL_claim_memory for new code.