mirror of
https://github.com/cloud-hypervisor/cloud-hypervisor.git
synced 2026-08-05 02:19:16 +00:00
arch: Remove GICv2
Virtio-mmio is removed, now virtio-pci is the only option for virtio transport layer. We use MSI for PCI device interrupt. While GICv2, the legacy interrupt controller, doesn't support MSI. So GICv2 is not very practical for Cloud-hypervisor, we can remove it. Signed-off-by: Michael Zhao <michael.zhao@arm.com>
This commit is contained in:
committed by
Rob Bradford
parent
58474854f2
commit
2f2e10ea35
@@ -408,7 +408,7 @@ mod tests {
|
||||
let hv = hypervisor::new().unwrap();
|
||||
let vm = hv.create_vm().unwrap();
|
||||
|
||||
assert!(create_gic(&vm, 1, false).is_ok());
|
||||
assert!(create_gic(&vm, 1).is_ok());
|
||||
}
|
||||
|
||||
#[test]
|
||||
@@ -416,7 +416,7 @@ mod tests {
|
||||
let hv = hypervisor::new().unwrap();
|
||||
let vm = hv.create_vm().unwrap();
|
||||
let _ = vm.create_vcpu(0).unwrap();
|
||||
let gic = create_gic(&vm, 1, false).expect("Cannot create gic");
|
||||
let gic = create_gic(&vm, 1).expect("Cannot create gic");
|
||||
|
||||
let res = get_dist_regs(gic.device());
|
||||
assert!(res.is_ok());
|
||||
@@ -432,7 +432,7 @@ mod tests {
|
||||
let hv = hypervisor::new().unwrap();
|
||||
let vm = hv.create_vm().unwrap();
|
||||
let _ = vm.create_vcpu(0).unwrap();
|
||||
let gic = create_gic(&vm, 1, false).expect("Cannot create gic");
|
||||
let gic = create_gic(&vm, 1).expect("Cannot create gic");
|
||||
|
||||
let mut gicr_typer = Vec::new();
|
||||
gicr_typer.push(123);
|
||||
@@ -450,7 +450,7 @@ mod tests {
|
||||
let hv = hypervisor::new().unwrap();
|
||||
let vm = hv.create_vm().unwrap();
|
||||
let _ = vm.create_vcpu(0).unwrap();
|
||||
let gic = create_gic(&vm, 1, false).expect("Cannot create gic");
|
||||
let gic = create_gic(&vm, 1).expect("Cannot create gic");
|
||||
|
||||
let mut gicr_typer = Vec::new();
|
||||
gicr_typer.push(123);
|
||||
@@ -468,7 +468,7 @@ mod tests {
|
||||
let hv = hypervisor::new().unwrap();
|
||||
let vm = hv.create_vm().unwrap();
|
||||
let _ = vm.create_vcpu(0).unwrap();
|
||||
let gic = create_gic(&vm, 1, false).expect("Cannot create gic");
|
||||
let gic = create_gic(&vm, 1).expect("Cannot create gic");
|
||||
|
||||
assert!(save_pending_tables(gic.device()).is_ok());
|
||||
}
|
||||
|
||||
@@ -1560,7 +1560,7 @@ impl Vm {
|
||||
// Creating a GIC device here, as the GIC will not be created when
|
||||
// restoring the device manager. Note that currently only the bare GICv3
|
||||
// without ITS is supported.
|
||||
let gic_device = create_gic(&self.vm, vcpu_numbers.try_into().unwrap(), false)
|
||||
let gic_device = create_gic(&self.vm, vcpu_numbers.try_into().unwrap())
|
||||
.map_err(|e| MigratableError::Restore(anyhow!("Could not create GIC: {:#?}", e)))?;
|
||||
|
||||
// Update the GIC entity in device manager
|
||||
@@ -2027,7 +2027,7 @@ mod tests {
|
||||
|
||||
let hv = hypervisor::new().unwrap();
|
||||
let vm = hv.create_vm().unwrap();
|
||||
let gic = create_gic(&vm, 1, false).unwrap();
|
||||
let gic = create_gic(&vm, 1).unwrap();
|
||||
assert!(create_fdt(
|
||||
&mem,
|
||||
&CString::new("console=tty0").unwrap(),
|
||||
|
||||
Reference in New Issue
Block a user