diff --git a/hypervisor/src/kvm/mod.rs b/hypervisor/src/kvm/mod.rs index 75073ec8d..1c1abd4b6 100644 --- a/hypervisor/src/kvm/mod.rs +++ b/hypervisor/src/kvm/mod.rs @@ -427,10 +427,10 @@ struct KvmDirtyLogSlot { /// Wrapper over KVM VM ioctls. pub struct KvmVm { - fd: Arc, + fd: VmFd, #[cfg(target_arch = "x86_64")] msrs: Vec, - dirty_log_slots: Arc>>, + dirty_log_slots: RwLock>, } impl KvmVm { @@ -1238,8 +1238,6 @@ impl hypervisor::Hypervisor for KvmHypervisor { break; } - let vm_fd = Arc::new(fd); - #[cfg(target_arch = "x86_64")] { let msr_list = self.get_msr_list()?; @@ -1256,17 +1254,17 @@ impl hypervisor::Hypervisor for KvmHypervisor { } Ok(Arc::new(KvmVm { - fd: vm_fd, + fd, msrs, - dirty_log_slots: Arc::new(RwLock::new(HashMap::new())), + dirty_log_slots: RwLock::new(HashMap::new()), })) } #[cfg(any(target_arch = "aarch64", target_arch = "riscv64"))] { Ok(Arc::new(KvmVm { - fd: vm_fd, - dirty_log_slots: Arc::new(RwLock::new(HashMap::new())), + fd, + dirty_log_slots: RwLock::new(HashMap::new()), })) } }