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-head
mailing list