pub trait ApicClient {
// Required methods
fn cr8(&mut self) -> u32;
fn set_cr8(&mut self, value: u32);
fn set_apic_base(&mut self, value: u64);
fn wake(&mut self, vp_index: VpIndex);
fn eoi(&mut self, vector: u8);
fn now(&mut self) -> VmTime;
fn pull_offload(&mut self) -> ([u32; 8], [u32; 8]);
}
Expand description
The client to pass to LocalApic::access
, to handle requests needed when
accessing the APIC.
Required Methods§
Sourcefn set_apic_base(&mut self, value: u64)
fn set_apic_base(&mut self, value: u64)
Set the APIC base MSR.
This is just to accelerate reads of the MSR. If apic base MSR reads
always come to msr_read
, then this can be a no-op.