From 59a7ad481c5b247fbae2144c820c88330cd24728 Mon Sep 17 00:00:00 2001 From: Mathieu Tarral Date: Thu, 29 Apr 2021 15:47:48 +0200 Subject: [PATCH] virtualbox: impl read_frame --- src/driver/virtualbox.rs | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/src/driver/virtualbox.rs b/src/driver/virtualbox.rs index 01e98700..2068de11 100644 --- a/src/driver/virtualbox.rs +++ b/src/driver/virtualbox.rs @@ -3,7 +3,7 @@ use std::error::Error; use fdp::{RegisterType, FDP}; use crate::api::{ - DriverInitParam, DriverType, Introspectable, Registers, SegmentReg, SystemTableReg, + DriverInitParam, DriverType, Introspectable, PageFrame, Registers, SegmentReg, SystemTableReg, X86Registers, }; @@ -30,15 +30,8 @@ impl Introspectable for VBox { Ok(1) } - fn read_physical( - &self, - paddr: u64, - buf: &mut [u8], - bytes_read: &mut u64, - ) -> Result<(), Box> { - self.fdp.read_physical_memory(paddr, buf)?; - *bytes_read = buf.len() as u64; - Ok(()) + fn read_frame(&self, frame: PageFrame, buf: &mut [u8]) -> Result<(), IoError> { + self.fdp.read_physical_memory(frame.to_paddr(), buf) } fn get_max_physical_addr(&self) -> Result> {