diff --git a/Cargo.lock b/Cargo.lock index da9ebacc8..cfec8cb68 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -570,7 +570,7 @@ dependencies = [ [[package]] name = "linux-loader" version = "0.1.0" -source = "git+https://github.com/rust-vmm/linux-loader#2a62f21b441716332df048762c3b15700f72563f" +source = "git+https://github.com/rust-vmm/linux-loader#ec930d700f43458f191ee50404810a155accb0ec" dependencies = [ "vm-memory", ] diff --git a/vmm/src/vm.rs b/vmm/src/vm.rs index 6e155ecf7..f74f63bba 100644 --- a/vmm/src/vm.rs +++ b/vmm/src/vm.rs @@ -43,6 +43,8 @@ use devices::HotPlugNotificationFlags; use linux_loader::cmdline::Cmdline; #[cfg(target_arch = "x86_64")] use linux_loader::loader::elf::Error::InvalidElfMagicNumber; +#[cfg(target_arch = "x86_64")] +use linux_loader::loader::elf::PvhBootCapability::PvhEntryPresent; use linux_loader::loader::KernelLoader; use signal_hook::{iterator::Signals, SIGINT, SIGTERM, SIGWINCH}; use std::collections::HashMap; @@ -529,7 +531,7 @@ impl Vm { let entry_point_addr: GuestAddress; let boot_prot: BootProtocol; - if let Some(pvh_entry_addr) = entry_addr.pvh_entry_addr { + if let PvhEntryPresent(pvh_entry_addr) = entry_addr.pvh_boot_cap { // Use the PVH kernel entry point to boot the guest entry_point_addr = pvh_entry_addr; boot_prot = BootProtocol::PvhBoot;