diff --git a/virtio-devices/src/lib.rs b/virtio-devices/src/lib.rs index 86359da65..fad2d987f 100644 --- a/virtio-devices/src/lib.rs +++ b/virtio-devices/src/lib.rs @@ -170,7 +170,11 @@ pub fn get_host_address_range( size: usize, ) -> Option<*mut u8> { if mem.check_range(addr, size) { - Some(mem.get_host_address(addr).unwrap()) + let slice = mem.get_slice(addr, size).unwrap(); + assert!(slice.len() >= size); + // TODO: return a VolatileSlice and fix all callers. + #[allow(deprecated)] + Some(slice.as_ptr()) } else { None }