mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2025-01-27 10:36:40 +00:00
55a9e504be
Now that cargo fmt has landed, run it over everything at once to bring rust source to the standard formatting. TEST=cargo test BUG=None Change-Id: Ic95a48725e5a40dcbd33ba6d5aef2bd01e91865b Reviewed-on: https://chromium-review.googlesource.com/1259287 Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com> Tested-by: Zach Reizner <zachr@chromium.org> Reviewed-by: Zach Reizner <zachr@chromium.org>
39 lines
1 KiB
Rust
39 lines
1 KiB
Rust
// Copyright 2017 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.
|
|
|
|
extern crate kvm_sys;
|
|
extern crate libc;
|
|
|
|
use libc::{c_char, ioctl, open, O_RDWR};
|
|
|
|
use kvm_sys::*;
|
|
|
|
const KVM_PATH: &'static str = "/dev/kvm\0";
|
|
|
|
#[test]
|
|
fn get_version() {
|
|
let sys_fd = unsafe { open(KVM_PATH.as_ptr() as *const c_char, O_RDWR) };
|
|
assert!(sys_fd >= 0);
|
|
|
|
let ret = unsafe { ioctl(sys_fd, KVM_GET_API_VERSION(), 0) };
|
|
assert_eq!(ret as u32, KVM_API_VERSION);
|
|
}
|
|
|
|
#[test]
|
|
fn create_vm_fd() {
|
|
let sys_fd = unsafe { open(KVM_PATH.as_ptr() as *const c_char, O_RDWR) };
|
|
assert!(sys_fd >= 0);
|
|
|
|
let vm_fd = unsafe { ioctl(sys_fd, KVM_CREATE_VM(), 0) };
|
|
assert!(vm_fd >= 0);
|
|
}
|
|
|
|
#[test]
|
|
fn check_vm_extension() {
|
|
let sys_fd = unsafe { open(KVM_PATH.as_ptr() as *const c_char, O_RDWR) };
|
|
assert!(sys_fd >= 0);
|
|
|
|
let has_user_memory = unsafe { ioctl(sys_fd, KVM_CHECK_EXTENSION(), KVM_CAP_USER_MEMORY) };
|
|
assert_eq!(has_user_memory, 1);
|
|
}
|