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