pub struct Config {Show 115 fields
pub ac_adapter: bool,
pub acpi_tables: Vec<PathBuf>,
pub android_display_service: Option<String>,
pub android_fstab: Option<PathBuf>,
pub async_executor: Option<ExecutorKind>,
pub balloon: bool,
pub balloon_bias: i64,
pub balloon_control: Option<PathBuf>,
pub balloon_page_reporting: bool,
pub balloon_ws_num_bins: u8,
pub balloon_ws_reporting: bool,
pub battery_config: Option<BatteryConfig>,
pub boost_uclamp: bool,
pub boot_cpu: usize,
pub break_linux_pci_config_io: bool,
pub bus_lock_ratelimit: u64,
pub coiommu_param: Option<CoIommuParameters>,
pub core_scheduling: bool,
pub cpu_capacity: BTreeMap<usize, u32>,
pub cpu_clusters: Vec<CpuSet>,
pub cpu_freq_domains: Vec<CpuSet>,
pub crash_pipe_name: Option<String>,
pub crash_report_uuid: Option<String>,
pub delay_rt: bool,
pub device_tree_overlay: Vec<DtboOption>,
pub disable_virtio_intx: bool,
pub disks: Vec<DiskOption>,
pub display_input_height: Option<u32>,
pub display_input_width: Option<u32>,
pub display_window_keyboard: bool,
pub display_window_mouse: bool,
pub dump_device_tree_blob: Option<PathBuf>,
pub dynamic_power_coefficient: BTreeMap<usize, u32>,
pub enable_fw_cfg: bool,
pub enable_hwp: bool,
pub executable_path: Option<Executable>,
pub fdt_position: Option<FdtPosition>,
pub file_backed_mappings_mmio: Vec<FileBackedMappingParameters>,
pub file_backed_mappings_ram: Vec<FileBackedMappingParameters>,
pub force_calibrated_tsc_leaf: bool,
pub force_s2idle: bool,
pub fw_cfg_parameters: Vec<FwCfgParameters>,
pub gdb: Option<u32>,
pub gpu_cgroup_path: Option<PathBuf>,
pub gpu_parameters: Option<GpuParameters>,
pub gpu_render_server_parameters: Option<GpuRenderServerParameters>,
pub gpu_server_cgroup_path: Option<PathBuf>,
pub host_cpu_topology: bool,
pub hugepages: bool,
pub hypervisor: Option<HypervisorKind>,
pub init_memory: Option<u64>,
pub initrd_path: Option<PathBuf>,
pub irq_chip: Option<IrqChipKind>,
pub itmt: bool,
pub jail_config: Option<JailConfig>,
pub lock_guest_memory: bool,
pub media_decoder: Vec<VideoDeviceConfig>,
pub memory: Option<u64>,
pub memory_file: Option<PathBuf>,
pub mmio_address_ranges: Vec<AddressRange>,
pub name: Option<String>,
pub net: Vec<NetParameters>,
pub no_i8042: bool,
pub no_pmu: bool,
pub no_rtc: bool,
pub no_smt: bool,
pub params: Vec<String>,
pub pci_config: PciConfig,
pub pci_hotplug_slots: Option<u8>,
pub per_vm_core_scheduling: bool,
pub pflash_parameters: Option<PflashParameters>,
pub plugin_gid_maps: Vec<GidMap>,
pub plugin_mounts: Vec<BindMount>,
pub plugin_root: Option<PathBuf>,
pub pmem_ext2: Vec<PmemExt2Option>,
pub pmems: Vec<PmemOption>,
pub protection_type: ProtectionType,
pub pstore: Option<Pstore>,
pub pvclock: bool,
pub pvm_fw: Option<PathBuf>,
pub restore_path: Option<PathBuf>,
pub rng: bool,
pub rt_cpus: CpuSet,
pub scsis: Vec<ScsiOption>,
pub serial_parameters: BTreeMap<(SerialHardware, u8), SerialParameters>,
pub shared_dirs: Vec<SharedDir>,
pub simple_media_device: bool,
pub smbios: SmbiosOptions,
pub socket_path: Option<PathBuf>,
pub sound: Option<PathBuf>,
pub stub_pci_devices: Vec<StubPciParameters>,
pub suspended: bool,
pub swap_dir: Option<PathBuf>,
pub swiotlb: Option<u64>,
pub unmap_guest_memory_on_fork: bool,
pub usb: bool,
pub v4l2_proxy: Vec<PathBuf>,
pub vcpu_affinity: Option<VcpuAffinity>,
pub vcpu_cgroup_path: Option<PathBuf>,
pub vcpu_count: Option<usize>,
pub vcpu_hybrid_type: BTreeMap<usize, CpuHybridType>,
pub vfio: Vec<VfioOption>,
pub vfio_isolate_hotplug: bool,
pub vhost_user: Vec<VhostUserFrontendOption>,
pub vhost_user_connect_timeout_ms: Option<u64>,
pub vhost_user_fs: Vec<VhostUserFsOption>,
pub video_dec: Vec<VideoDeviceConfig>,
pub video_enc: Vec<VideoDeviceConfig>,
pub virt_cpufreq_v2: bool,
pub virtio_input: Vec<InputDeviceOption>,
pub virtio_snds: Vec<Parameters>,
pub vsock: Option<VsockConfig>,
pub vtpm_proxy: bool,
pub wayland_socket_paths: BTreeMap<String, PathBuf>,
pub x_display: Option<String>,
}
Expand description
Aggregate of all configurable options for a running VM.
Fields§
§ac_adapter: bool
§acpi_tables: Vec<PathBuf>
§android_display_service: Option<String>
§android_fstab: Option<PathBuf>
§async_executor: Option<ExecutorKind>
§balloon: bool
§balloon_bias: i64
§balloon_control: Option<PathBuf>
§balloon_page_reporting: bool
§balloon_ws_num_bins: u8
§balloon_ws_reporting: bool
§battery_config: Option<BatteryConfig>
§boost_uclamp: bool
§boot_cpu: usize
§break_linux_pci_config_io: bool
§bus_lock_ratelimit: u64
§coiommu_param: Option<CoIommuParameters>
§core_scheduling: bool
§cpu_capacity: BTreeMap<usize, u32>
§cpu_clusters: Vec<CpuSet>
§cpu_freq_domains: Vec<CpuSet>
§crash_pipe_name: Option<String>
§crash_report_uuid: Option<String>
§delay_rt: bool
§device_tree_overlay: Vec<DtboOption>
§disable_virtio_intx: bool
§disks: Vec<DiskOption>
§display_input_height: Option<u32>
§display_input_width: Option<u32>
§display_window_keyboard: bool
§display_window_mouse: bool
§dump_device_tree_blob: Option<PathBuf>
§dynamic_power_coefficient: BTreeMap<usize, u32>
§enable_fw_cfg: bool
§enable_hwp: bool
§executable_path: Option<Executable>
§fdt_position: Option<FdtPosition>
§file_backed_mappings_mmio: Vec<FileBackedMappingParameters>
§file_backed_mappings_ram: Vec<FileBackedMappingParameters>
§force_calibrated_tsc_leaf: bool
§force_s2idle: bool
§fw_cfg_parameters: Vec<FwCfgParameters>
§gdb: Option<u32>
§gpu_cgroup_path: Option<PathBuf>
§gpu_parameters: Option<GpuParameters>
§gpu_render_server_parameters: Option<GpuRenderServerParameters>
§gpu_server_cgroup_path: Option<PathBuf>
§host_cpu_topology: bool
§hugepages: bool
§hypervisor: Option<HypervisorKind>
§init_memory: Option<u64>
§initrd_path: Option<PathBuf>
§irq_chip: Option<IrqChipKind>
§itmt: bool
§jail_config: Option<JailConfig>
§lock_guest_memory: bool
§media_decoder: Vec<VideoDeviceConfig>
§memory: Option<u64>
§memory_file: Option<PathBuf>
§mmio_address_ranges: Vec<AddressRange>
§name: Option<String>
§net: Vec<NetParameters>
§no_i8042: bool
§no_pmu: bool
§no_rtc: bool
§no_smt: bool
§params: Vec<String>
§pci_config: PciConfig
§pci_hotplug_slots: Option<u8>
§per_vm_core_scheduling: bool
§pflash_parameters: Option<PflashParameters>
§plugin_gid_maps: Vec<GidMap>
§plugin_mounts: Vec<BindMount>
§plugin_root: Option<PathBuf>
§pmem_ext2: Vec<PmemExt2Option>
§pmems: Vec<PmemOption>
§protection_type: ProtectionType
§pstore: Option<Pstore>
§pvclock: bool
§pvm_fw: Option<PathBuf>
Must be Some
iff protection_type == ProtectionType::UnprotectedWithFirmware
.
restore_path: Option<PathBuf>
§rng: bool
§rt_cpus: CpuSet
§scsis: Vec<ScsiOption>
§serial_parameters: BTreeMap<(SerialHardware, u8), SerialParameters>
§simple_media_device: bool
§smbios: SmbiosOptions
§socket_path: Option<PathBuf>
§sound: Option<PathBuf>
§stub_pci_devices: Vec<StubPciParameters>
§suspended: bool
§swap_dir: Option<PathBuf>
§swiotlb: Option<u64>
§unmap_guest_memory_on_fork: bool
§usb: bool
§v4l2_proxy: Vec<PathBuf>
§vcpu_affinity: Option<VcpuAffinity>
§vcpu_cgroup_path: Option<PathBuf>
§vcpu_count: Option<usize>
§vcpu_hybrid_type: BTreeMap<usize, CpuHybridType>
§vfio: Vec<VfioOption>
§vfio_isolate_hotplug: bool
§vhost_user: Vec<VhostUserFrontendOption>
§vhost_user_connect_timeout_ms: Option<u64>
§vhost_user_fs: Vec<VhostUserFsOption>
§video_dec: Vec<VideoDeviceConfig>
§video_enc: Vec<VideoDeviceConfig>
§virt_cpufreq_v2: bool
§virtio_input: Vec<InputDeviceOption>
§virtio_snds: Vec<Parameters>
§vsock: Option<VsockConfig>
§vtpm_proxy: bool
§wayland_socket_paths: BTreeMap<String, PathBuf>
§x_display: Option<String>
Trait Implementations§
source§impl<'de> Deserialize<'de> for Config
impl<'de> Deserialize<'de> for Config
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnwindSafe for Config
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> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.