aboutsummaryrefslogtreecommitdiff
path: root/sbin/mount_fusefs
diff options
context:
space:
mode:
authorAlan Somers <asomers@FreeBSD.org>2019-06-14 18:14:51 +0000
committerAlan Somers <asomers@FreeBSD.org>2019-06-14 18:14:51 +0000
commit8eecd9ce05ee9744ebf9ecd0c2d1d2431b9fe06c (patch)
treeaa8bc278baf42dc0e72fea5b381f80e5b2ddc437 /sbin/mount_fusefs
parentdff3a6b4109964418dd88e3aa0d931924b54d149 (diff)
downloadsrc-8eecd9ce05ee9744ebf9ecd0c2d1d2431b9fe06c.tar.gz
src-8eecd9ce05ee9744ebf9ecd0c2d1d2431b9fe06c.zip
fusefs: enable write clustering
Enable write clustering in fusefs whenever cache mode is set to writeback and the "async" mount option is used. With default values for MAXPHYS, DFLTPHYS, and the fuse max_write mount parameter, that means sequential writes will now be written 128KB at a time instead of 64KB. Also, add a regression test for PR 238565, a panic during unmount that probably affects UFS, ext2, and msdosfs as well as fusefs. PR: 238565 Sponsored by: The FreeBSD Foundation
Notes
Notes: svn path=/projects/fuse2/; revision=349036
Diffstat (limited to 'sbin/mount_fusefs')
-rw-r--r--sbin/mount_fusefs/mount_fusefs.813
-rw-r--r--sbin/mount_fusefs/mount_fusefs.c2
2 files changed, 10 insertions, 5 deletions
diff --git a/sbin/mount_fusefs/mount_fusefs.8 b/sbin/mount_fusefs/mount_fusefs.8
index 30eb7c0acb74..259101a38630 100644
--- a/sbin/mount_fusefs/mount_fusefs.8
+++ b/sbin/mount_fusefs/mount_fusefs.8
@@ -29,7 +29,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd May 19, 2019
+.Dd June 14, 2019
.Dt MOUNT_FUSEFS 8
.Os
.Sh NAME
@@ -136,21 +136,24 @@ The following options are available (and also their negated versions,
by prefixing them with
.Dq no ) :
.Bl -tag -width indent
-.It Cm default_permissions
-Enable traditional (file mode based) permission checking in kernel
.It Cm allow_other
Do not apply
.Sx STRICT ACCESS POLICY .
Only root can use this option
+.It Cm async
+I/O to the file system may be done asynchronously.
+Writes may delayed and/or reordered.
+.It Cm default_permissions
+Enable traditional (file mode based) permission checking in kernel
.It Cm max_read Ns = Ns Ar n
Limit size of read requests to
.Ar n
+.It Cm neglect_shares
+Do not refuse unmounting if there are secondary mounts
.It Cm private
Refuse shared mounting of the daemon.
This is the default behaviour, to allow sharing, expicitly use
.Fl o Cm noprivate
-.It Cm neglect_shares
-Do not refuse unmounting if there are secondary mounts
.It Cm push_symlinks_in
Prefix absolute symlinks with the mountpoint
.It Cm subtype Ns = Ns Ar fsname
diff --git a/sbin/mount_fusefs/mount_fusefs.c b/sbin/mount_fusefs/mount_fusefs.c
index e6131ec8b063..b5dda5077dc4 100644
--- a/sbin/mount_fusefs/mount_fusefs.c
+++ b/sbin/mount_fusefs/mount_fusefs.c
@@ -88,6 +88,8 @@ static struct mntopt mopts[] = {
{ "large_read", 0, 0x00, 1 },
/* "nonempty", just the first two chars are stripped off during parsing */
{ "nempty", 0, 0x00, 1 },
+ { "async", 0, MNT_ASYNC, 0},
+ { "noasync", 1, MNT_ASYNC, 0},
MOPT_STDOPTS,
MOPT_END
};