mirror of
https://github.com/cloud-hypervisor/cloud-hypervisor.git
synced 2026-08-05 02:19:16 +00:00
block: enable to get a raw FD of each block device's DiskFile
This is a prerequisite for the next steps. Signed-off-by: Philipp Schuster <philipp.schuster@cyberus-technology.de> On-behalf-of: SAP philipp.schuster@sap.com
This commit is contained in:
committed by
Rob Bradford
parent
a23d4b7cf2
commit
a647d7863c
@@ -2,6 +2,8 @@
|
||||
//
|
||||
// SPDX-License-Identifier: Apache-2.0 AND BSD-3-Clause
|
||||
|
||||
use std::os::fd::RawFd;
|
||||
|
||||
use thiserror::Error;
|
||||
use vmm_sys_util::eventfd::EventFd;
|
||||
|
||||
@@ -25,6 +27,12 @@ pub trait DiskFile: Send {
|
||||
fn topology(&mut self) -> DiskTopology {
|
||||
DiskTopology::default()
|
||||
}
|
||||
/// Returns the file descriptor of the underlying disk image file.
|
||||
// Impl Note:
|
||||
// This must be `RawFd` instead of `BorrowedFd` or `&File`, as some
|
||||
// implementations wrap the file in an `Arc<Mutex<T>>`, which makes it
|
||||
// impossible to return a reference.
|
||||
fn fd(&mut self) -> RawFd;
|
||||
}
|
||||
|
||||
#[derive(Error, Debug)]
|
||||
|
||||
Reference in New Issue
Block a user