diff --git a/block/src/raw_async_aio.rs b/block/src/raw_async_aio.rs index c2da2ccd1..c627318cd 100644 --- a/block/src/raw_async_aio.rs +++ b/block/src/raw_async_aio.rs @@ -78,6 +78,14 @@ impl disk_file::DiskSize for RawFileDiskAio { } } +impl disk_file::PhysicalSize for RawFileDiskAio { + fn physical_size(&self) -> BlockResult { + query_device_size(&self.file) + .map(|(_, physical_size)| physical_size) + .map_err(|e| BlockError::new(BlockErrorKind::Io, DiskFileError::Size(e))) + } +} + pub struct RawFileAsyncAio { fd: RawFd, ctx: aio::IoContext,