Re: [fuse-devel] [PATCH] FUSE/CUSE: implement direct mmap support

From: Miklos Szeredi
Date: Wed Feb 10 2010 - 03:41:19 EST


On Wed, 10 Feb 2010, Goswin von Brederlow wrote:
> Tejun Heo <tj@xxxxxxxxxx> writes:
>
> > Implement FUSE direct mmap support. The server can redirect client
> > mmap requests to any SHMLBA aligned offset in the custom address space
> > attached to the fuse channel. The address space is managed by the
> > server using mmap/munmap(2). The SHMLBA alignment requirement is
> > necessary to avoid cache aliasing issues on archs with virtually
> > indexed caches as FUSE direct mmaps are basically shared memory
> > between clients and the server.
> >
> > The direct mmap address space is backed by pinned kernel pages which
> > are allocated on the first fault either from a client or the server.
> > If used carelessly, this can easily waste and drain memory.
> > Currently, a server must have CAP_SYS_ADMIN to manage dmmap regions by
> > mmapping and munmapping the channel fd.
>
> Does that mean that for example in unionfs-fuse when a user wants to
> mmap a file I can just mmap the actual underlying file from the real
> filesystem and any read/write access would then shortcut fuse and go
> directly to the real file?

No. It is the /dev/fuse file descriptor that is being mapped to give
access to the "direct mmaped" memory.

Thanks,
Miklos
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/