pub struct Config {
Show 117 fields pub ac97_parameters: Vec<Ac97Parameters>, pub acpi_tables: Vec<PathBuf>, pub android_fstab: Option<PathBuf>, pub balloon: bool, pub balloon_bias: i64, pub balloon_control: Option<PathBuf>, pub balloon_page_reporting: bool, pub battery_config: Option<BatteryConfig>, pub cid: Option<u64>, pub coiommu_param: Option<CoIommuParameters>, pub cpu_capacity: BTreeMap<usize, u32>, pub cpu_clusters: Vec<Vec<usize>>, pub crash_pipe_name: Option<String>, pub crash_report_uuid: Option<String>, pub delay_rt: bool, pub direct_edge_irq: Vec<u32>, pub direct_fixed_evts: Vec<ACPIPMFixedEvent>, pub direct_gpe: Vec<u32>, pub direct_level_irq: Vec<u32>, pub direct_mmio: Option<DirectIoOption>, pub direct_pmio: Option<DirectIoOption>, pub disable_virtio_intx: bool, pub disks: Vec<DiskOption>, pub display_window_keyboard: bool, pub display_window_mouse: bool, pub dmi_path: Option<PathBuf>, pub enable_hwp: bool, pub enable_pnp_data: bool, pub executable_path: Option<Executable>, pub file_backed_mappings: Vec<FileBackedMappingParameters>, pub force_calibrated_tsc_leaf: bool, pub force_s2idle: bool, pub gdb: Option<u32>, pub gpu_parameters: Option<GpuParameters>, pub gpu_render_server_parameters: Option<GpuRenderServerParameters>, pub host_cpu_topology: bool, pub host_ip: Option<Ipv4Addr>, pub hugepages: bool, pub hypervisor: Option<HypervisorKind>, pub init_memory: Option<u64>, pub initrd_path: Option<PathBuf>, pub itmt: bool, pub jail_config: Option<JailConfig>, pub kvm_device_path: PathBuf, pub lock_guest_memory: bool, pub mac_address: Option<MacAddress>, pub memory: Option<u64>, pub memory_file: Option<PathBuf>, pub mmio_address_ranges: Vec<AddressRange>, pub net: Vec<NetParameters>, pub net_vq_pairs: Option<u16>, pub netmask: Option<Ipv4Addr>, pub no_i8042: bool, pub no_rtc: bool, pub no_smt: bool, pub oem_strings: Vec<String>, pub params: Vec<String>, pub pci_low_start: Option<u64>, pub pcie_ecam: Option<AddressRange>, pub pcie_rp: Vec<HostPcieRootPortParameters>, 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_devices: Vec<DiskOption>, pub privileged_vm: bool, pub protection_type: ProtectionType, pub pstore: Option<Pstore>, pub pvm_fw: Option<PathBuf>, pub rng: bool, pub rt_cpus: Vec<usize>, pub serial_parameters: BTreeMap<(SerialHardware, u8), SerialParameters>, pub shared_dirs: Vec<SharedDir>, pub socket_path: Option<PathBuf>, pub software_tpm: bool, pub sound: Option<PathBuf>, pub split_irqchip: bool, pub strict_balloon: bool, pub stub_pci_devices: Vec<StubPciParameters>, pub swiotlb: Option<u64>, pub tap_fd: Vec<RawDescriptor>, pub tap_name: Vec<String>, pub usb: bool, pub userspace_msr: BTreeMap<u32, MsrConfig>, pub vcpu_affinity: Option<VcpuAffinity>, pub vcpu_cgroup_path: Option<PathBuf>, pub vcpu_count: Option<usize>, pub vfio: Vec<VfioCommand>, pub vfio_isolate_hotplug: bool, pub vhost_net: bool, pub vhost_net_device_path: PathBuf, pub vhost_user_blk: Vec<VhostUserOption>, pub vhost_user_console: Vec<VhostUserOption>, pub vhost_user_fs: Vec<VhostUserFsOption>, pub vhost_user_gpu: Vec<VhostUserOption>, pub vhost_user_mac80211_hwsim: Option<VhostUserOption>, pub vhost_user_net: Vec<VhostUserOption>, pub vhost_user_snd: Vec<VhostUserOption>, pub vhost_user_video_dec: Vec<VhostUserOption>, pub vhost_user_vsock: Vec<VhostUserOption>, pub vhost_user_wl: Option<VhostUserOption>, pub vhost_vsock_device: Option<PathBuf>, pub video_dec: Vec<VideoDeviceConfig>, pub video_enc: Vec<VideoDeviceConfig>, pub virtio_input_evdevs: Vec<PathBuf>, pub virtio_keyboard: Vec<PathBuf>, pub virtio_mice: Vec<PathBuf>, pub virtio_multi_touch: Vec<TouchDeviceOption>, pub virtio_single_touch: Vec<TouchDeviceOption>, pub virtio_snds: Vec<SndParameters>, pub virtio_switches: Vec<PathBuf>, pub virtio_trackpad: Vec<TouchDeviceOption>, pub vtpm_proxy: bool, pub vvu_proxy: Vec<VvuOption>, pub wayland_socket_paths: BTreeMap<String, PathBuf>, pub x_display: Option<String>,
}
Expand description

Aggregate of all configurable options for a running VM.

Fields

ac97_parameters: Vec<Ac97Parameters>acpi_tables: Vec<PathBuf>android_fstab: Option<PathBuf>balloon: boolballoon_bias: i64balloon_control: Option<PathBuf>balloon_page_reporting: boolbattery_config: Option<BatteryConfig>cid: Option<u64>coiommu_param: Option<CoIommuParameters>cpu_capacity: BTreeMap<usize, u32>cpu_clusters: Vec<Vec<usize>>crash_pipe_name: Option<String>crash_report_uuid: Option<String>delay_rt: booldirect_edge_irq: Vec<u32>direct_fixed_evts: Vec<ACPIPMFixedEvent>direct_gpe: Vec<u32>direct_level_irq: Vec<u32>direct_mmio: Option<DirectIoOption>direct_pmio: Option<DirectIoOption>disable_virtio_intx: booldisks: Vec<DiskOption>display_window_keyboard: booldisplay_window_mouse: booldmi_path: Option<PathBuf>enable_hwp: boolenable_pnp_data: boolexecutable_path: Option<Executable>file_backed_mappings: Vec<FileBackedMappingParameters>force_calibrated_tsc_leaf: boolforce_s2idle: boolgdb: Option<u32>gpu_parameters: Option<GpuParameters>gpu_render_server_parameters: Option<GpuRenderServerParameters>host_cpu_topology: boolhost_ip: Option<Ipv4Addr>hugepages: boolhypervisor: Option<HypervisorKind>init_memory: Option<u64>initrd_path: Option<PathBuf>itmt: booljail_config: Option<JailConfig>kvm_device_path: PathBuflock_guest_memory: boolmac_address: Option<MacAddress>memory: Option<u64>memory_file: Option<PathBuf>mmio_address_ranges: Vec<AddressRange>net: Vec<NetParameters>net_vq_pairs: Option<u16>netmask: Option<Ipv4Addr>no_i8042: boolno_rtc: boolno_smt: booloem_strings: Vec<String>params: Vec<String>pci_low_start: Option<u64>pcie_ecam: Option<AddressRange>pcie_rp: Vec<HostPcieRootPortParameters>per_vm_core_scheduling: boolpflash_parameters: Option<PflashParameters>plugin_gid_maps: Vec<GidMap>plugin_mounts: Vec<BindMount>plugin_root: Option<PathBuf>pmem_devices: Vec<DiskOption>privileged_vm: boolprotection_type: ProtectionTypepstore: Option<Pstore>pvm_fw: Option<PathBuf>

Must be Some iff protection_type == ProtectionType::UnprotectedWithFirmware.

rng: boolrt_cpus: Vec<usize>serial_parameters: BTreeMap<(SerialHardware, u8), SerialParameters>shared_dirs: Vec<SharedDir>socket_path: Option<PathBuf>software_tpm: boolsound: Option<PathBuf>split_irqchip: boolstrict_balloon: boolstub_pci_devices: Vec<StubPciParameters>swiotlb: Option<u64>tap_fd: Vec<RawDescriptor>tap_name: Vec<String>usb: booluserspace_msr: BTreeMap<u32, MsrConfig>vcpu_affinity: Option<VcpuAffinity>vcpu_cgroup_path: Option<PathBuf>vcpu_count: Option<usize>vfio: Vec<VfioCommand>vfio_isolate_hotplug: boolvhost_net: boolvhost_net_device_path: PathBufvhost_user_blk: Vec<VhostUserOption>vhost_user_console: Vec<VhostUserOption>vhost_user_fs: Vec<VhostUserFsOption>vhost_user_gpu: Vec<VhostUserOption>vhost_user_mac80211_hwsim: Option<VhostUserOption>vhost_user_net: Vec<VhostUserOption>vhost_user_snd: Vec<VhostUserOption>vhost_user_video_dec: Vec<VhostUserOption>vhost_user_vsock: Vec<VhostUserOption>vhost_user_wl: Option<VhostUserOption>vhost_vsock_device: Option<PathBuf>video_dec: Vec<VideoDeviceConfig>video_enc: Vec<VideoDeviceConfig>virtio_input_evdevs: Vec<PathBuf>virtio_keyboard: Vec<PathBuf>virtio_mice: Vec<PathBuf>virtio_multi_touch: Vec<TouchDeviceOption>virtio_single_touch: Vec<TouchDeviceOption>virtio_snds: Vec<SndParameters>virtio_switches: Vec<PathBuf>virtio_trackpad: Vec<TouchDeviceOption>vtpm_proxy: boolvvu_proxy: Vec<VvuOption>wayland_socket_paths: BTreeMap<String, PathBuf>x_display: Option<String>

Trait Implementations

Returns the “default value” for a type. Read more

Deserialize this value from the given Serde deserializer. Read more

Serialize this value into the given Serde serializer. Read more

The type returned in the event of a conversion error.

Performs the conversion.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

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. Read more

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read more

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s. Read more

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s. Read more

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.