@@ -233,9 +233,9 @@ impl HypervisorHandler {
233
233
sandbox_memory_manager : SandboxMemoryManager < GuestSharedMemory > ,
234
234
) -> Result < ( ) > {
235
235
let configuration = self . configuration . clone ( ) ;
236
- let sandbox_memory_manager = Arc :: new ( Mutex :: new ( sandbox_memory_manager) ) ;
237
236
#[ cfg( target_os = "windows" ) ]
238
- let in_process = sandbox_memory_manager. lock ( ) . unwrap ( ) . is_in_process ( ) ;
237
+ let in_process = sandbox_memory_manager. is_in_process ( ) ;
238
+ let sandbox_memory_manager = Arc :: new ( Mutex :: new ( sandbox_memory_manager) ) ;
239
239
240
240
* self . execution_variables . shm . try_lock ( ) . unwrap ( ) = Some ( sandbox_memory_manager) ;
241
241
@@ -850,10 +850,12 @@ fn set_up_hypervisor_partition(
850
850
851
851
#[ cfg( target_os = "windows" ) ]
852
852
Some ( HypervisorType :: Whp ) => {
853
+ let mgr_lock = mgr. lock ( ) . unwrap ( ) ;
854
+
853
855
let hv = crate :: hypervisor:: hyperv_windows:: HypervWindowsDriver :: new (
854
856
regions,
855
- mgr . lock ( ) . unwrap ( ) . shared_mem . raw_mem_size ( ) , // we use raw_* here because windows driver requires 64K aligned addresses,
856
- mgr . lock ( ) . unwrap ( ) . shared_mem . raw_ptr ( ) as * mut c_void , // and instead convert it to base_addr where needed in the driver itself
857
+ mgr_lock . shared_mem . raw_mem_size ( ) , // we use raw_* here because windows driver requires 64K aligned addresses,
858
+ mgr_lock . shared_mem . raw_ptr ( ) as * mut c_void , // and instead convert it to base_addr where needed in the driver itself
857
859
pml4_ptr. absolute ( ) ?,
858
860
entrypoint_ptr. absolute ( ) ?,
859
861
rsp_ptr. absolute ( ) ?,
0 commit comments