(
vm: &Arc<dyn hypervisor::Vm>,
device_manager: &Arc<Mutex<DeviceManager>>,
console_info: Option<ConsoleInfo>,
console_resize_pipe: Option<Arc<File>>,
original_
| 1100 | /// Initialize KVM-specific components. |
| 1101 | #[cfg(feature = "kvm")] |
| 1102 | fn init_kvm( |
| 1103 | vm: &Arc<dyn hypervisor::Vm>, |
| 1104 | device_manager: &Arc<Mutex<DeviceManager>>, |
| 1105 | console_info: Option<ConsoleInfo>, |
| 1106 | console_resize_pipe: Option<Arc<File>>, |
| 1107 | original_termios: Arc<Mutex<Option<termios>>>, |
| 1108 | ) -> Result<()> { |
| 1109 | // For KVM, create interrupt controller after boot vcpus |
| 1110 | // because GIC state is restored from snapshot during vcpu creation |
| 1111 | let ic = device_manager |
| 1112 | .lock() |
| 1113 | .unwrap() |
| 1114 | .create_interrupt_controller() |
| 1115 | .map_err(Error::DeviceManager)?; |
| 1116 | |
| 1117 | vm.init().map_err(Error::InitializeVm)?; |
| 1118 | |
| 1119 | device_manager |
| 1120 | .lock() |
| 1121 | .unwrap() |
| 1122 | .create_devices(console_info, console_resize_pipe, original_termios, ic) |
| 1123 | .map_err(Error::DeviceManager)?; |
| 1124 | |
| 1125 | Ok(()) |
| 1126 | } |
| 1127 | |
| 1128 | /// Create fw_cfg device if enabled in configuration. |
| 1129 | #[cfg(feature = "fw_cfg")] |
nothing calls this directly
no test coverage detected