<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/fs/fuse, branch upstream/11.0.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=upstream%2F11.0.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=upstream%2F11.0.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2016-05-18T22:23:20Z</updated>
<entry>
<title>If a local (AF_LOCAL, AF_UNIX) socket creation (bind) is attempted</title>
<updated>2016-05-18T22:23:20Z</updated>
<author>
<name>Rick Macklem</name>
<email>rmacklem@FreeBSD.org</email>
</author>
<published>2016-05-18T22:23:20Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=372b97d0b69e470337c2ab650e4d3d9d36d3fc58'/>
<id>urn:sha1:372b97d0b69e470337c2ab650e4d3d9d36d3fc58</id>
<content type='text'>
on a fuse mounted file system, it will crash. Although it may be
possible to make this work correctly, this patch avoids the crash
in the meantime.
I removed the MPASS(), since panicing for the FIFO case didn't make
a lot of sense when it returns an error for the others.

PR:		195000
Submitted by:	henry.hu.sh@gmail.com (earlier version)
MFC after:	2 weeks
</content>
</entry>
<entry>
<title>Fix fuse for "cp" of a mode 0444 file to the file system.</title>
<updated>2016-05-15T23:15:10Z</updated>
<author>
<name>Rick Macklem</name>
<email>rmacklem@FreeBSD.org</email>
</author>
<published>2016-05-15T23:15:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e6e244562252798faf891dd77a94209fee8249cd'/>
<id>urn:sha1:e6e244562252798faf891dd77a94209fee8249cd</id>
<content type='text'>
When "cp" of a file with read-only (mode 0444) to a fuse mounted
file system was attempted it would fail with EACCES. This was because
fuse would attempt to open the file WRONLY and the open would fail.
This patch changes the fuse_vnop_open() to test for an extant read-write
open and use that, if it is available.
This makes the "cp" of a read-only file to the fuse mounted file system
work ok.
There are simpler ways to fix this than adding the fuse_filehandle_validrw()
function, but this function is useful for future patches related to
exporting a fuse filesystem via NFS.

MFC after:	2 weeks
</content>
</entry>
<entry>
<title>Fix fuse so that stale buffer cache data isn't read.</title>
<updated>2016-05-15T00:45:17Z</updated>
<author>
<name>Rick Macklem</name>
<email>rmacklem@FreeBSD.org</email>
</author>
<published>2016-05-15T00:45:17Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=72393e3d803d048f990d374a2e681925325317e7'/>
<id>urn:sha1:72393e3d803d048f990d374a2e681925325317e7</id>
<content type='text'>
When I/O on a file under fuse is switched from buffered to DIRECT_IO,
it was possible to read stale (before a recent modification) data from
the buffer cache. This patch invalidates the buffer cache for the
file to fix this.

PR:		194293
MFC after:	2 weeks
</content>
</entry>
<entry>
<title>Fix fuse to use DIRECT_IO when required.</title>
<updated>2016-05-14T20:03:22Z</updated>
<author>
<name>Rick Macklem</name>
<email>rmacklem@FreeBSD.org</email>
</author>
<published>2016-05-14T20:03:22Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1390cca2b10ecc8ad5416ebf046d581e8bbd67e4'/>
<id>urn:sha1:1390cca2b10ecc8ad5416ebf046d581e8bbd67e4</id>
<content type='text'>
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.

Tested by:	nishida@asusa.net, freebsd@moosefs.com
PR:		194293, 206238
MFC after:	2 weeks
</content>
</entry>
<entry>
<title>sys/fs: spelling fixes in comments.</title>
<updated>2016-04-29T20:51:24Z</updated>
<author>
<name>Pedro F. Giffuni</name>
<email>pfg@FreeBSD.org</email>
</author>
<published>2016-04-29T20:51:24Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=b3a15ddd5bd0b45b613016d48689927df4682104'/>
<id>urn:sha1:b3a15ddd5bd0b45b613016d48689927df4682104</id>
<content type='text'>
No functional change.
</content>
</entry>
<entry>
<title>Fix breakage caused by r292373 in ZFS/FUSE/NFS/SMBFS.</title>
<updated>2015-12-16T23:48:50Z</updated>
<author>
<name>Gleb Smirnoff</name>
<email>glebius@FreeBSD.org</email>
</author>
<published>2015-12-16T23:48:50Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=f17f88d3e023596500957a253809e018e30ef11e'/>
<id>urn:sha1:f17f88d3e023596500957a253809e018e30ef11e</id>
<content type='text'>
With the new VOP_GETPAGES() KPI the "count" argument counts pages already,
and doesn't need to be translated from bytes to pages.

While here make it consistent that *rbehind and *rahead are updated only
if we doesn't return error.

Pointy hat to:	glebius
</content>
</entry>
<entry>
<title>A change to KPI of vm_pager_get_pages() and underlying VOP_GETPAGES().</title>
<updated>2015-12-16T21:30:45Z</updated>
<author>
<name>Gleb Smirnoff</name>
<email>glebius@FreeBSD.org</email>
</author>
<published>2015-12-16T21:30:45Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=b0cd20172d854584c67cd47461a77e98b43cbcd8'/>
<id>urn:sha1:b0cd20172d854584c67cd47461a77e98b43cbcd8</id>
<content type='text'>
o With new KPI consumers can request contiguous ranges of pages, and
  unlike before, all pages will be kept busied on return, like it was
  done before with the 'reqpage' only. Now the reqpage goes away. With
  new interface it is easier to implement code protected from race
  conditions.

  Such arrayed requests for now should be preceeded by a call to
  vm_pager_haspage() to make sure that request is possible. This
  could be improved later, making vm_pager_haspage() obsolete.

  Strenghtening the promises on the business of the array of pages
  allows us to remove such hacks as swp_pager_free_nrpage() and
  vm_pager_free_nonreq().

o New KPI accepts two integer pointers that may optionally point at
  values for read ahead and read behind, that a pager may do, if it
  can. These pages are completely owned by pager, and not controlled
  by the caller.

  This shifts the UFS-specific readahead logic from vm_fault.c, which
  should be file system agnostic, into vnode_pager.c. It also removes
  one VOP_BMAP() request per hard fault.

Discussed with:	kib, alc, jeff, scottl
Sponsored by:	Nginx, Inc.
Sponsored by:	Netflix
</content>
</entry>
<entry>
<title>File systems that do not use the buffer cache (such as ZFS) must</title>
<updated>2015-04-15T20:16:31Z</updated>
<author>
<name>Rick Macklem</name>
<email>rmacklem@FreeBSD.org</email>
</author>
<published>2015-04-15T20:16:31Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=dda11d4ab9d40ef61f88b04a2e5decd00a871ef0'/>
<id>urn:sha1:dda11d4ab9d40ef61f88b04a2e5decd00a871ef0</id>
<content type='text'>
use VOP_FSYNC() to perform the NFS server's Commit operation.
This patch adds a mnt_kern_flag called MNTK_USES_BCACHE which
is set by file systems that use the buffer cache. If this flag
is not set, the NFS server always does a VOP_FSYNC().
This should be ok for old file system modules that do not set
MNTK_USES_BCACHE, since calling VOP_FSYNC() is correct, although
it might not be optimal for file systems that use the buffer cache.

Reviewed by:	kib
MFC after:	2 weeks
</content>
</entry>
<entry>
<title>Fix white spaces.</title>
<updated>2015-03-02T19:14:58Z</updated>
<author>
<name>Jung-uk Kim</name>
<email>jkim@FreeBSD.org</email>
</author>
<published>2015-03-02T19:14:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2d427c524dfc4813a829ba8a2167e351722c5e24'/>
<id>urn:sha1:2d427c524dfc4813a829ba8a2167e351722c5e24</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Make fuse(4) respect FOPEN_DIRECT_IO.  This is required for correct</title>
<updated>2015-03-02T19:04:27Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2015-03-02T19:04:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=ead063e0a245b902fbda1a9ced2f3b963afd39ed'/>
<id>urn:sha1:ead063e0a245b902fbda1a9ced2f3b963afd39ed</id>
<content type='text'>
operation of GlusterFS.

PR:		192701
Submitted by:	harsha at harshavardhana.net
Reviewed by:	kib@
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
</content>
</entry>
</feed>
