pub struct PrewarmList {
pub pages: Vec<u64>,
}Expand description
Pre-warm list — a small set of guest IPAs the pager faults in before vCPU 0 runs so the first guest cycles are not all blocking on the pager (16 § 5.2).
Fields§
§pages: Vec<u64>One page IPA per entry. The pager faults each in order on registration.
Implementations§
Source§impl PrewarmList
impl PrewarmList
Sourcepub fn from_boot_critical(
kernel_text_ipa: u64,
vcpu0_stack_ipa: u64,
fdt_ipa: u64,
) -> Self
pub fn from_boot_critical( kernel_text_ipa: u64, vcpu0_stack_ipa: u64, fdt_ipa: u64, ) -> Self
Build a list from kernel _text/_stext neighbourhood, vCPU 0 stack, and
FDT.
Each input is a guest-physical address; we add it as a single page entry.
The pager pads the address to its tracking page granule on prewarm.
Trait Implementations§
Source§impl Clone for PrewarmList
impl Clone for PrewarmList
Source§fn clone(&self) -> PrewarmList
fn clone(&self) -> PrewarmList
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PrewarmList
impl Debug for PrewarmList
Source§impl Default for PrewarmList
impl Default for PrewarmList
Source§fn default() -> PrewarmList
fn default() -> PrewarmList
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for PrewarmList
impl RefUnwindSafe for PrewarmList
impl Send for PrewarmList
impl Sync for PrewarmList
impl Unpin for PrewarmList
impl UnsafeUnpin for PrewarmList
impl UnwindSafe for PrewarmList
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more