From 56fe4c61afa31c45ed220323361ca6057558d264 Mon Sep 17 00:00:00 2001 From: Rob Bradford Date: Thu, 28 Apr 2022 15:46:41 +0100 Subject: [PATCH] vmm: Duplicate Vm::entry_point() across architectures These will have very different implementations when asynchronously loading the kernel. Signed-off-by: Rob Bradford --- vmm/src/vm.rs | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/vmm/src/vm.rs b/vmm/src/vm.rs index 2698c4f31..e9c97be52 100644 --- a/vmm/src/vm.rs +++ b/vmm/src/vm.rs @@ -2055,12 +2055,23 @@ impl Vm { Some(rsdp_addr) } + #[cfg(target_arch = "x86_64")] + fn entry_point(&mut self) -> Result> { + #[cfg(feature = "tdx")] + if self.config.lock().unwrap().tdx.is_some() { + return Ok(None); + } + + Ok(if self.kernel.as_ref().is_some() { + Some(self.load_kernel()?) + } else { + None + }) + } + + #[cfg(target_arch = "aarch64")] fn entry_point(&mut self) -> Result> { Ok(if self.kernel.as_ref().is_some() { - #[cfg(feature = "tdx")] - if self.config.lock().unwrap().tdx.is_some() { - return Ok(None); - } Some(self.load_kernel()?) } else { None