pub struct Processor<'a>(/* private fields */);
Implementations§
Source§impl<'a> Processor<'a>
impl<'a> Processor<'a>
pub fn enable_synic(&self) -> Result<(), Error>
pub fn set_cpuid(&self, entries: &[kvm_cpuid_entry2]) -> Result<(), Error>
Sourcepub fn force_exit(&self)
pub fn force_exit(&self)
Forces an exit to be returned from the next call to VpRunner::run
.
Note that this does nothing if a VpRunner
does not currently exist
for this VP, or if this is called from the same thread as the runner.
pub fn interrupt(&self, vector: u32) -> Result<(), Error>
Sourcepub fn set_reg64(&self, reg_id: u64, value: u64) -> Result<(), Error>
pub fn set_reg64(&self, reg_id: u64, value: u64) -> Result<(), Error>
Very not structured way of setting the register. Could enjoy using an enum.
pub fn set_regs(&self, regs: &kvm_regs) -> Result<(), Error>
pub fn set_sregs(&self, sregs: &kvm_sregs) -> Result<(), Error>
Sourcepub fn get_reg64(&self, reg_id: u64) -> Result<u64, Error>
pub fn get_reg64(&self, reg_id: u64) -> Result<u64, Error>
Very not structured way of getting the register. Could enjoy using an enum.
pub fn get_regs(&self) -> Result<kvm_regs, Error>
pub fn get_sregs(&self) -> Result<kvm_sregs, Error>
pub fn get_msrs(&self, msrs: &[u32], values: &mut [u64]) -> Result<(), Error>
pub fn set_msrs(&self, msrs: &[(u32, u64)]) -> Result<(), Error>
pub fn get_lapic(&self, state: &mut [u8; 1024]) -> Result<(), Error>
pub fn set_lapic(&self, state: &[u8; 1024]) -> Result<(), Error>
pub fn get_xsave(&self, state: &mut [u8; 4096]) -> Result<(), Error>
pub fn set_xsave(&self, state: &[u8; 4096]) -> Result<(), Error>
pub fn set_debug_regs(&self, regs: &DebugRegisters) -> Result<(), Error>
pub fn get_debug_regs(&self) -> Result<DebugRegisters, Error>
pub fn set_xcr0(&self, value: u64) -> Result<(), Error>
pub fn get_xcr0(&self) -> Result<u64, Error>
pub fn set_mp_state(&self, state: u32) -> Result<(), Error>
pub fn get_mp_state(&self) -> Result<u32, Error>
pub fn set_vcpu_events(&self, events: &kvm_vcpu_events) -> Result<(), Error>
pub fn get_vcpu_events(&self) -> Result<kvm_vcpu_events, Error>
pub fn translate_gva(&self, gva: u64) -> Result<kvm_translation, Error>
Sourcepub fn set_guest_debug(
&self,
control: u32,
db: [u64; 4],
dr7: u64,
) -> Result<(), Error>
pub fn set_guest_debug( &self, control: u32, db: [u64; 4], dr7: u64, ) -> Result<(), Error>
Sets the guest debugging state: control
bits KVM_GUESTDBG_*
, db
containing DR0 through DR3, and dr7
.
Sourcepub unsafe fn set_device_attr<T>(
&self,
group: u32,
attr: u32,
addr: &T,
flags: u32,
) -> Result<c_int>
pub unsafe fn set_device_attr<T>( &self, group: u32, attr: u32, addr: &T, flags: u32, ) -> Result<c_int>
§Safety
addr
must point to the appropriate input for the attribute being
set.
pub fn runner(&self) -> VpRunner<'a>
Auto Trait Implementations§
impl<'a> Freeze for Processor<'a>
impl<'a> !RefUnwindSafe for Processor<'a>
impl<'a> Send for Processor<'a>
impl<'a> Sync for Processor<'a>
impl<'a> Unpin for Processor<'a>
impl<'a> !UnwindSafe for Processor<'a>
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