pub trait SynicMonitorAccess: SynicPortAccess {
// Required method
fn set_monitor_page(
&self,
vtl: Vtl,
gpa: Option<MonitorPageGpas>,
) -> Result<()>;
// Provided method
fn allocate_monitor_page(&self, vtl: Vtl) -> Result<Option<MonitorPageGpas>> { ... }
}Expand description
Provides monitor page functionality for a SynicPortAccess implementation.
Required Methods§
Sourcefn set_monitor_page(&self, vtl: Vtl, gpa: Option<MonitorPageGpas>) -> Result<()>
fn set_monitor_page(&self, vtl: Vtl, gpa: Option<MonitorPageGpas>) -> Result<()>
Sets the GPA of the monitor page currently in use.
Provided Methods§
Sourcefn allocate_monitor_page(&self, vtl: Vtl) -> Result<Option<MonitorPageGpas>>
fn allocate_monitor_page(&self, vtl: Vtl) -> Result<Option<MonitorPageGpas>>
Allocates monitor pages and sets them as currently in use. If allocating monitor pages is
not supported, returns Ok(None).
The pages will be deallocated if the monitor page is subsequently changed or cleared using
SynicMonitorAccess::set_monitor_page.
Allocating a host-to-guest monitor page is optional so MonitorPageGpas::parent_to_child
may be zero.