vmm: Remove kernel based IOAPIC handling from the device manager

Previously the device setup code assumed that if no IOAPIC was passed in
then the device should be added to the kernel irqchip. As an earlier
change meant that there was always a userspace IOAPIC this kernel based
code can be removed.

The accessor still returns an Option type to leave scope for
implementing a situation without an IOAPIC (no serial or GED device).
This change does not add support no-IOAPIC mode as the original code did
not either.

Signed-off-by: Rob Bradford <robert.bradford@intel.com>
This commit is contained in:
Rob Bradford
2019-12-05 16:36:28 +00:00
committed by Samuel Ortiz
parent afea6a10a2
commit 59d01712ad
2 changed files with 24 additions and 75 deletions
-4
View File
@@ -380,9 +380,6 @@ impl Vm {
cap.args[0] = ioapic::NUM_IOAPIC_PINS as u64;
fd.enable_cap(&cap).map_err(Error::VmSetup)?;
// Because of the split irqchip, we need a userspace IOAPIC.
let userspace_ioapic = true;
// Patch tsc deadline timer bit
cpuid_patches.push(cpu::CpuidPatch {
function: 1,
@@ -451,7 +448,6 @@ impl Vm {
let device_manager = DeviceManager::new(
&vm_info,
allocator,
userspace_ioapic,
ram_regions.len() as u32,
&exit_evt,
&reset_evt,