review of 2 fuse patches
Rick Macklem
rmacklem at uoguelph.ca
Thu Apr 28 23:26:30 UTC 2016
Hi,
I've attached two small patches for fuse. (They both are
in PR#206238.)
Is anyone willing to review these?
fuse-wronly.patch - Fixes a problem where the fuse interface has
a file opened write-only and a write of a partial buffer cache
block is done. At that point, the buffer cache code tries to
read the block in and this fails, since the file isn't opened
for reading. (The thread basically gets hung in the buffer cache
code retrying the read over and over...)
I could see two fixes for this:
1 - Always open files read-write when write-only opens are specified.
(The problem with this is that a user might have write, but not
read access to the file.)
2 - When files are opened write-only, force DirectIO, so that the
buffer cache isn't used.
*** This patch implements #2.
fuse-createio.patch - This simple patch fixes the code so that it
obeys the fuse file system's request that an open/create uses
DirectIO. (Without this patch, fuse ignores the flag in the file
system's reply and does buffered I/O.) This is apparently needed
by MooseFS. (This patch assumes that fuse-wronly.patch has already
been applied.)
Thanks in advance for any review, rick
ps: If you want these in phabricator, let me know. However they seem
pretty straightforward, except for "how to fix the first problem?".
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fuse-createio.patch
Type: text/x-patch
Size: 439 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20160428/57fd9cac/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fuse-wronly.patch
Type: text/x-patch
Size: 1807 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20160428/57fd9cac/attachment-0001.bin>
More information about the freebsd-fs
mailing list