mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2025-02-11 12:35:26 +00:00
61 lines
2 KiB
Rust
61 lines
2 KiB
Rust
|
// Copyright 2022 The Chromium OS Authors. All rights reserved.
|
||
|
// Use of this source code is governed by a BSD-style license that can be
|
||
|
// found in the LICENSE file.
|
||
|
|
||
|
// TODO(b/210705746): See if we can bring in the changes compiled out from go/playcl/50499
|
||
|
use hypervisor::ProtectionType;
|
||
|
|
||
|
use crate::test_integration::simple_vm_test;
|
||
|
|
||
|
#[test]
|
||
|
fn simple_kvm_test() {
|
||
|
use devices::KvmKernelIrqChip;
|
||
|
use hypervisor::kvm::*;
|
||
|
simple_vm_test::<_, _, KvmVcpu, _, _, _>(
|
||
|
|guest_mem| {
|
||
|
let kvm = Kvm::new().expect("failed to create kvm");
|
||
|
let vm = KvmVm::new(&kvm, guest_mem, ProtectionType::Unprotected)
|
||
|
.expect("failed to create kvm vm");
|
||
|
(kvm, vm)
|
||
|
},
|
||
|
|vm, vcpu_count, _| {
|
||
|
KvmKernelIrqChip::new(vm, vcpu_count).expect("failed to create KvmKernelIrqChip")
|
||
|
},
|
||
|
);
|
||
|
}
|
||
|
|
||
|
#[test]
|
||
|
fn simple_kvm_kernel_irqchip_test() {
|
||
|
use devices::KvmKernelIrqChip;
|
||
|
use hypervisor::kvm::*;
|
||
|
simple_vm_test::<_, _, KvmVcpu, _, _, _>(
|
||
|
|guest_mem| {
|
||
|
let kvm = Kvm::new().expect("failed to create kvm");
|
||
|
let vm = KvmVm::new(&kvm, guest_mem, ProtectionType::Unprotected)
|
||
|
.expect("failed to create kvm vm");
|
||
|
(kvm, vm)
|
||
|
},
|
||
|
|vm, vcpu_count, _| {
|
||
|
KvmKernelIrqChip::new(vm, vcpu_count).expect("failed to create KvmKernelIrqChip")
|
||
|
},
|
||
|
);
|
||
|
}
|
||
|
|
||
|
#[test]
|
||
|
fn simple_kvm_split_irqchip_test() {
|
||
|
use devices::KvmSplitIrqChip;
|
||
|
use hypervisor::kvm::*;
|
||
|
simple_vm_test::<_, _, KvmVcpu, _, _, _>(
|
||
|
|guest_mem| {
|
||
|
let kvm = Kvm::new().expect("failed to create kvm");
|
||
|
let vm = KvmVm::new(&kvm, guest_mem, ProtectionType::Unprotected)
|
||
|
.expect("failed to create kvm vm");
|
||
|
(kvm, vm)
|
||
|
},
|
||
|
|vm, vcpu_count, device_tube| {
|
||
|
KvmSplitIrqChip::new(vm, vcpu_count, device_tube, None)
|
||
|
.expect("failed to create KvmSplitIrqChip")
|
||
|
},
|
||
|
);
|
||
|
}
|