/[base]
ViewVC logotype

Revision 345852


Jump to revision: Previous Next
Author: asomers
Date: Wed Apr 3 19:59:45 2019 UTC (5 years, 3 months ago)
Changed paths: 14
Log Message:
fusefs: send FUSE_FLUSH during VOP_CLOSE

The FUSE protocol says that FUSE_FLUSH should be send every time a file
descriptor is closed.  That's not quite possible in FreeBSD because multiple
file descriptors can share a single struct file, and closef doesn't call
fo_close until the last close.  However, we can still send FUSE_FLUSH on
every VOP_CLOSE, which is probably good enough.

There are two purposes for FUSE_FLUSH.  One is to allow file systems to
return EIO if they have an error when writing data that's cached
server-side.  The other is to release POSIX file locks (which fusefs(5) does
not yet support).

PR:		236405, 236327
Sponsored by:	The FreeBSD Foundation


Changed paths

Path Details
Directoryprojects/fuse2/sys/fs/fuse/fuse_file.c modified , text changed
Directoryprojects/fuse2/sys/fs/fuse/fuse_file.h modified , text changed
Directoryprojects/fuse2/sys/fs/fuse/fuse_io.c modified , text changed
Directoryprojects/fuse2/sys/fs/fuse/fuse_node.c modified , text changed
Directoryprojects/fuse2/sys/fs/fuse/fuse_vnops.c modified , text changed
Directoryprojects/fuse2/tests/sys/fs/fusefs/allow_other.cc modified , text changed
Directoryprojects/fuse2/tests/sys/fs/fusefs/flush.cc modified , text changed
Directoryprojects/fuse2/tests/sys/fs/fusefs/fsync.cc modified , text changed
Directoryprojects/fuse2/tests/sys/fs/fusefs/mockfs.cc modified , text changed
Directoryprojects/fuse2/tests/sys/fs/fusefs/open.cc modified , text changed
Directoryprojects/fuse2/tests/sys/fs/fusefs/release.cc modified , text changed
Directoryprojects/fuse2/tests/sys/fs/fusefs/utils.cc modified , text changed
Directoryprojects/fuse2/tests/sys/fs/fusefs/utils.hh modified , text changed
Directoryprojects/fuse2/tests/sys/fs/fusefs/write.cc modified , text changed

  ViewVC Help
Powered by ViewVC 1.1.27