pub enum DebugRequest {
Attach,
Detach,
Resume {
response: OneshotSender<DebugStopReason>,
},
Break,
SetDebugState {
vp: u32,
state: DebugState,
},
GetVpState(FailableRpc<u32, Box<DebuggerVpState>>),
SetVpState(FailableRpc<(u32, Box<DebuggerVpState>), ()>),
ReadMemory(FailableRpc<(GuestAddress, usize), Vec<u8>>),
WriteMemory(FailableRpc<(GuestAddress, Vec<u8>), ()>),
}
Variants§
Attach
The debugger has been attached.
Detach
The debugger has been detached.
Resume
Resume the VM, responding with a DebugStopReason
once the VM encounters a stop condition (e.g: breakpoint hit)
Fields
§
response: OneshotSender<DebugStopReason>
Break
Debugger is requesting a manual break.
SetDebugState
Sets the hardware debugger state for a VP.
GetVpState(FailableRpc<u32, Box<DebuggerVpState>>)
Fetch the specified vp’s register state.
SetVpState(FailableRpc<(u32, Box<DebuggerVpState>), ()>)
Set the specified vp’s register state.
ReadMemory(FailableRpc<(GuestAddress, usize), Vec<u8>>)
Read from the specified GPA from the guest.
WriteMemory(FailableRpc<(GuestAddress, Vec<u8>), ()>)
Write to the specified GPA from the guest.
Trait Implementations§
Source§impl Debug for DebugRequest
impl Debug for DebugRequest
Source§impl DefaultEncoding for DebugRequest
impl DefaultEncoding for DebugRequest
Source§impl<'encoding> OneofDecode<'encoding, Resource> for DebugRequest
impl<'encoding> OneofDecode<'encoding, Resource> for DebugRequest
Source§fn read_variant(
item: &mut InplaceOption<'_, Self>,
n: u32,
field: FieldReader<'encoding, '_, Resource>,
) -> Result<()>
fn read_variant( item: &mut InplaceOption<'_, Self>, n: u32, field: FieldReader<'encoding, '_, Resource>, ) -> Result<()>
Read the specified variant from the reader.
Source§impl OneofEncode<Resource> for DebugRequest
impl OneofEncode<Resource> for DebugRequest
Source§fn write_variant(self, writer: MessageWriter<'_, '_, Resource>)
fn write_variant(self, writer: MessageWriter<'_, '_, Resource>)
Write the variant to the writer.
Source§fn compute_variant_size(&mut self, sizer: MessageSizer<'_>)
fn compute_variant_size(&mut self, sizer: MessageSizer<'_>)
Compute the size of the variant.
Auto Trait Implementations§
impl Freeze for DebugRequest
impl !RefUnwindSafe for DebugRequest
impl Send for DebugRequest
impl Sync for DebugRequest
impl Unpin for DebugRequest
impl !UnwindSafe for DebugRequest
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> MeshField for T
impl<T> MeshField for T
§impl<T> MeshPayload for T
impl<T> MeshPayload for T
§impl<T> SerializeMessage for Twhere
T: 'static + MeshPayload + Send,
impl<T> SerializeMessage for Twhere
T: 'static + MeshPayload + Send,
§fn compute_message_size(&mut self, sizer: MessageSizer<'_>)
fn compute_message_size(&mut self, sizer: MessageSizer<'_>)
Computes the message size, as in [
MessageEncode::compute_message_size
].§fn write_message(self, writer: MessageWriter<'_, '_, Resource>)
fn write_message(self, writer: MessageWriter<'_, '_, Resource>)
Writes the message, as in [
MessageEncode::write_message
].