Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 03 Sep 2019 14:07:37 -0000
From:      Alan Somers <asomers@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r346186 - head/share/man/man5
Message-ID:  <201904131359.x3DDx1dR030173@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: asomers
Date: Sat Apr 13 13:59:01 2019
New Revision: 346186
URL: https://svnweb.freebsd.org/changeset/base/346186

Log:
  fusefs: add a fusefs(5) man page
  
  PR:		233393
  Reported by:	tech-lists@zyxst.net
  Reviewed by:	cem
  MFC after:	2 weeks
  Sponsored by:	The FreeBSD Foundation
  Differential Revision:	https://reviews.freebsd.org/D19651

Added:
  head/share/man/man5/fusefs.5   (contents, props changed)
Modified:
  head/share/man/man5/Makefile

Modified: head/share/man/man5/Makefile
==============================================================================
--- head/share/man/man5/Makefile	Sat Apr 13 13:31:06 2019	(r346185)
+++ head/share/man/man5/Makefile	Sat Apr 13 13:59:01 2019	(r346186)
@@ -27,6 +27,7 @@ MAN=	acct.5 \
 	forward.5 \
 	fs.5 \
 	fstab.5 \
+	fusefs.5 \
 	group.5 \
 	hosts.5 \
 	hosts.equiv.5 \

Added: head/share/man/man5/fusefs.5
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/share/man/man5/fusefs.5	Sat Apr 13 13:59:01 2019	(r346186)
@@ -0,0 +1,147 @@
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\"
+.\" Copyright (c) 2019 The FreeBSD Foundation
+.\"
+.\" This software was developed by BFF Storage Systems, LLC under sponsorship
+.\" from the FreeBSD Foundation.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.Dd April 13, 2019
+.Dt FUSEFS 5
+.Os
+.Sh NAME
+.Nm fusefs
+.Nd "File system in USErspace"
+.Sh SYNOPSIS
+To link into the kernel:
+.Bd -ragged -offset indent
+.Cd "options FUSEFS"
+.Ed
+.Pp
+To load as a loadable kernel module:
+.Pp
+.Dl "kldload fusefs"
+.Sh DESCRIPTION
+The
+.Nm
+driver implements a file system that is serviced by a userspace program.
+.Pp
+There are many uses for
+.Nm .
+Userspace daemons can access libraries or programming languages that cannot run
+in kernel-mode, for example.
+.Nm
+is also useful for developing and debugging file systems, because a crash of
+the daemon will not take down the entire operating system.
+Finally, the
+.Nm
+API is portable.
+Many daemons can run on multiple operating systems with minimal modifications.
+.Sh SYSCTL VARIABLES
+The following variables are available as both
+.Xr sysctl 8
+variables and
+.Xr loader 8
+tunables:
+.Bl -tag -width indent
+.It Va vfs.fusefs.kernelabi_major
+Major version of the FUSE kernel ABI supported by this driver.
+.It Va vfs.fusefs.kernelabi_minor
+Minor version of the FUSE kernel ABI supported by this driver.
+.It Va vfs.fusefs.data_cache_mode
+Controls how
+.Nm
+will cache file data.
+A value of 0 will disable caching entirely.
+Every data access will be forwarded to the daemon.
+A value of 1 will select write-through caching.
+Reads will be cached in the VFS layer as usual.
+Writes will be immediately forwarded to the daemon, and also added to the cache.
+A value of 2 will select write-back caching.
+Reads and writes will both be cached, and writes will occasionally be flushed
+to the daemon by the page daemon.
+Write-back caching is usually unsafe, especially for FUSE file systems that
+require network access.
+.It Va vfs.fusefs.lookup_cache_enable
+Controls whether
+.Nm
+will cache lookup responses from the file system.
+FUSE file systems indicate whether lookup responses should be cacheable, but
+it may be useful to globally disable caching them if a file system is
+misbehaving.
+.\" Undocumented sysctls
+.\" ====================
+.\" Counters: I intend to rename to vfs.fusefs.stats.* for clarity
+.\" vfs.fusefs.lookup_cache_{hits, misses}
+.\" vfs.fusefs.filehandle_count
+.\" vfs.fusefs.ticker_count
+.\" vfs.fusefs.node_count
+.\"
+.\" vfs.fusefs.version - useless since the driver moved in-tree
+.\" vfs.fusefs.reclaim_revoked: I don't understand it well-enough
+.\" vfs.fusefs.sync_unmount: dead code
+.\" vfs.fusefs.enforce_dev_perms: I don't understand it well enough.
+.\" vfs.fusefs.init_backgrounded: dead code
+.\" vfs.fusefs.iov_credit: I don't understand it well enough
+.\" vfs.fusefs.iov_permanent_bufsize: I don't understand it well enough
+.\" vfs.fusefs.fix_broken_io: I don't understand it well enough
+.\" vfs.fusefs.sync_resize: useless and should be removed
+.\" vfs.fusefs.refresh_size: probably useless?
+.\" vfs.fusefs.mmap_enable: why is this optional?
+.\" vfs.fusefs.data_cache_invalidate: what is this needed for?
+.Sh SEE ALSO
+.Xr mount_fusefs 8
+.Sh HISTORY
+The
+.Nm fuse
+driver was written as the part of the
+.Fx
+implementation of the FUSE userspace file system framework (see
+.Xr https://github.com/libfuse/libfuse )
+and first appeared in the
+.Pa sysutils/fusefs-kmod
+port, supporting
+.Fx 6.0 .
+It was added to the base system in
+.Fx 10.0 ,
+and renamed to
+.Nm
+for
+.Fx 12.1 .
+.Sh AUTHORS
+.An -nosplit
+The
+.Nm fuse
+driver was originally written by
+.An Csaba Henk
+as a Google Summer of Code project in 2005.
+It was further developed by
+.An Ilya Putsikau
+during Google Summer of Code 2011, and that version was integrated into the
+base system by
+.An Attilio Rao Aq Mt attilio@FreeBSD.org .
+.Pp
+This manual page was written by
+.An Alan Somers Aq Mt asomers@FreeBSD.org .





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201904131359.x3DDx1dR030173>