Module fuse_backend_rs::common::file_buf
source · Expand description
Provide data buffers to support tokio and tokio-uring based async io.
The vm-memory v0.6.0 introduced support of dirty page tracking by using Bitmap
, which adds a
generic type parameters to several APIs. That’s a breaking change and makes the rust compiler
fail to compile our code. So introduce FileVolatileSlice to mask out the BitmapSlice
generic type parameter. Dirty page tracking is handled at higher level in IoBuffers
.
The tokio-uring crates uses io-uring for actual IO operations. And the io-uring APIs require passing ownership of buffers to the runtime. So FileVolatileBuf is introduced to support tokio-uring based async io.
Structs§
- An adapter structure to support
io-uring
based asynchronous IO. - An adapter structure to work around limitations of the
vm-memory
crate.
Enums§
- Error codes related to buffer management.