hypervisor: Refactor create_passthrough_device() for generic type

Changed the return type of create_passthrough_device() to generic type
hypervisor::Device.

Signed-off-by: Michael Zhao <michael.zhao@arm.com>
This commit is contained in:
Michael Zhao
2020-07-21 17:56:00 +08:00
committed by Samuel Ortiz
parent 6c8749adf2
commit ddf1b76906
4 changed files with 32 additions and 22 deletions

View File

@@ -10,6 +10,7 @@
//
use crate::DeviceAttr;
use std::os::unix::io::AsRawFd;
use thiserror::Error;
#[derive(Error, Debug)]
@@ -33,7 +34,7 @@ pub type Result<T> = std::result::Result<T, HypervisorDeviceError>;
///
/// This crate provides a hypervisor-agnostic interfaces for device
///
pub trait Device: Send + Sync {
pub trait Device: Send + Sync + AsRawFd {
/// Set device attribute.
fn set_device_attr(&self, attr: &DeviceAttr) -> Result<()>;
}