On 2021/1/8 23:26, Vivek Goyal wrote:
On Fri, Jan 08, 2021 at 12:12:52PM +0800, Eryu Guan wrote:
[..]
Anyone has other thoughts about how to reduce fragmentation in
implementations?
There's an fuse-backend-rs[1] project hosted on cloud-hypervisor, it is
a library to communicate with the Linux FUSE clients, which includes:
- ABI layer, which defines all data structures shared between linux Fuse
framework and Fuse daemons.
- API layer, defines the interfaces for Fuse daemons to implement a
userspace file system.
- Transport layer, which supports both the Linux Fuse device and
virtio-fs protocol.
- VFS/pseudo_fs, an abstraction layer to support multiple file systems
by a single virtio-fs device.
- A sample passthrough file system implementation, which passes through
files from daemons to clients.
So at a high level, is this equivalent of libfuse written in rust?
Yes, they are similar in concept. Though fuse-backend-rs only provides
interfaces like the libfuse lowlevel APIs for filesystem
implementations. The fuse session handling part is still outside [1] but
we are planning to move it into fuse-backend-rs as well.
Cheers,
Tao
[1]
https://github.com/dragonflyoss/image-service/blob/master/utils/src/fuse.rs
--
Into something rich and strange.
_______________________________________________
Virtio-fs mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/virtio-fs