Messages in this thread |  | | | From | Tejun Heo <> | | Subject | [PATCHSET] FUSE/CUSE: implement direct mmap, take#3 | | Date | Thu, 18 Jun 2009 18:24:29 +0900 |
Hello,
This is the third take of fuse-implement-direct-mmap patchset. This patchset implements direct mmap support for FUSE (and CUSE). Each direct mmap area is backed by anonymous mapping (shmem_file) and the FUSE server can decide how they are shared.
mmap request is handled in two steps. MMAP first queries the server whether it wants to share the mapping with an existing one or create a new one, and if so, with which flags. MMAP_COMMIT notifies the server the result of mmap and if successful the fd the server can use to access the mmap region.
Changes from the last take[L] are
* mmap-don-t-assume-f_op-mmap-doesn-t-change-vma.patch was unnecessary. Dropped and mmap implementation updated accordingly.
* Updated to the current master which now contains CUSE support.
This patchset contains the following patches.
0001-fdtable-export-alloc_fd.patch 0002-FUSE-make-request_wait_answer-wait-for-end-co.patch 0003-FUSE-implement-fuse_req-prep.patch 0004-FUSE-implement-direct-mmap.patch
0001 update exports fdtable for following FUSE changes. 0002-0003 update fuse_req->end() handling and add ->prep(). 0004 implements direct mmap.
This patchset is on top of
linus#master(1d89b30cc9be41af87881682ec82e2c107849dbe)
and is available in the following git tree.
git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git fuse-mmap
diffstat follows. fs/file.c | 1 fs/fuse/cuse.c | 1 fs/fuse/dev.c | 70 ++++++-- fs/fuse/file.c | 432 +++++++++++++++++++++++++++++++++++++++++++++++++-- fs/fuse/fuse_i.h | 19 ++ include/linux/fuse.h | 47 +++++ 6 files changed, 538 insertions(+), 32 deletions(-) Thanks.
-- tejun
[L] http://thread.gmane.org/gmane.linux.kernel/821839
|  |