Skip to content

Commit dd4597a

Browse files
vireshkstefano-garzarella
authored andcommitted
vhost-user-backend: Don't create MmapRegion separately
GuestRegionMmap::from_range() can take care of creating the region as well now, use it. Signed-off-by: Viresh Kumar <[email protected]>
1 parent 958cdec commit dd4597a

File tree

1 file changed

+9
-11
lines changed

1 file changed

+9
-11
lines changed

crates/vhost-user-backend/src/handler.rs

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,7 @@ use virtio_bindings::bindings::virtio_ring::VIRTIO_RING_F_EVENT_IDX;
2222
use virtio_queue::{Error as VirtQueError, QueueT};
2323
use vm_memory::bitmap::Bitmap;
2424
use vm_memory::mmap::NewBitmap;
25-
use vm_memory::{
26-
FileOffset, GuestAddress, GuestAddressSpace, GuestMemoryMmap, GuestRegionMmap, MmapRegion,
27-
};
25+
use vm_memory::{FileOffset, GuestAddress, GuestAddressSpace, GuestMemoryMmap, GuestRegionMmap};
2826
use vmm_sys_util::epoll::EventSet;
2927

3028
use super::backend::VhostUserBackend;
@@ -527,15 +525,15 @@ where
527525
region: &VhostUserSingleMemoryRegion,
528526
file: File,
529527
) -> VhostUserResult<()> {
530-
let mmap_region = MmapRegion::from_file(
531-
FileOffset::new(file, region.mmap_offset),
532-
region.memory_size as usize,
533-
)
534-
.map_err(|e| VhostUserError::ReqHandlerError(io::Error::new(io::ErrorKind::Other, e)))?;
535528
let guest_region = Arc::new(
536-
GuestRegionMmap::new(mmap_region, GuestAddress(region.guest_phys_addr)).map_err(
537-
|e| VhostUserError::ReqHandlerError(io::Error::new(io::ErrorKind::Other, e)),
538-
)?,
529+
GuestRegionMmap::from_range(
530+
GuestAddress(region.guest_phys_addr),
531+
region.memory_size as usize,
532+
Some(FileOffset::new(file, region.mmap_offset)),
533+
)
534+
.map_err(|e| {
535+
VhostUserError::ReqHandlerError(io::Error::new(io::ErrorKind::Other, e))
536+
})?,
539537
);
540538

541539
let mem = self

0 commit comments

Comments
 (0)