svn commit: r299753 - head/sys/fs/fuse

Rick Macklem rmacklem at uoguelph.ca
Mon May 16 20:48:27 UTC 2016


Alexey Dokuchaev wrote:
> On Sat, May 14, 2016 at 08:03:22PM +0000, Rick Macklem wrote:
> > New Revision: 299753
> > URL: https://svnweb.freebsd.org/changeset/base/299753
> > 
> > Log:
> >   Fix fuse to use DIRECT_IO when required.
> >   
> >   When a file is opened write-only and a partial block was written,
> >   buffered I/O would try and read the whole block in. This would
> >   result in a hung thread, since there was no open (fuse filehandle)
> >   that allowed reading. This patch avoids the problem by forcing
> >   DIRECT_IO for this case.
> >   It also sets DIRECT_IO when the file system specifies the FN_DIRECTIO
> >   flag in its reply to the open.
> 
> Since you're at fuse now, perhaps you could also have a look at PR 195000?
> 
> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=195000
> 
> ./danfe
> 
Yea, the patch in PR#195000 looks ok. I'll try to reproduce the crash and if
I can test the patch, I can commit it.
Or would you prefer to do so?

I think fuse can be made to handle special files by  creating separate tables
of vop methods (like the NFS client does), but that is a fair amount of work, so
I think committing this patch to stop the crash makes sense in the meantime.

rick


More information about the svn-src-all mailing list