Lines Matching +full:use +full:- +full:kernel
2 Copyright (C) 2001-2007 Miklos Szeredi <miklos@szeredi.hu>
11 #error "Never include <fuse_common.h> directly; use <fuse.h> or <fuse_lowlevel.h> instead."
62 /** Can be filled in by open/create, to use direct I/O on this file. */
65 /** Can be filled in by open and opendir. It signals the kernel that any
86 May only be set in ->release(). */
89 /** Can be filled in by opendir. It signals the kernel to
99 /** Padding. Reserved for future use*/
111 /** Requested poll events. Available in ->poll. Only set on kernels
131 * whether to use separate device fds for each thread
157 * If this capability is not requested/available, the kernel will
159 * file-handle at any time, and will attempt to order read requests by
162 * This feature is enabled by default when supported by the kernel.
169 * This feature is enabled by default when supported by the kernel,
179 * This feature is enabled by default when supported by the kernel.
191 * Indicates that the kernel should not apply the umask to the
199 * Indicates that libfuse should try to use splice() when writing to
215 * Indicates that libfuse should try to use splice() when reading from
218 * This feature is enabled by default when supported by the kernel and
227 * If not set, flock(2) calls will be handled by the FUSE kernel module
228 * internally (so any access that does not go through the kernel cannot be taken
231 * This feature is enabled by default when supported by the kernel and
239 * This feature is enabled by default when supported by the kernel.
244 * Traditionally, while a file is open the FUSE kernel module only
248 * without the kernel knowing about it.
258 * go through the kernel, *attr_timeout* should be set to a very large
261 * This feature is enabled by default when supported by the kernel.
268 * This feature is enabled by default when supported by the kernel and if the
278 * If FUSE_CAP_READDIRPLUS is set and this flag is not set, the kernel
282 * If FUSE_CAP_READDIRPLUS is set and this flag is set, the kernel
292 * that because it doesn't do lookups. "ls -l" should result in all
295 * This feature is enabled by default when supported by the kernel and
304 * If this capability is not requested/available, the kernel will ensure that
306 * I/O file-handle at any time.
308 * This feature is enabled by default when supported by the kernel.
314 * individual write request may be buffered and merged in the kernel
322 * Indicates support for zero-message opens. If this flag is set in
326 * kernel. (If this flag is not set, returning ENOSYS will be treated
336 * is unset, the FUSE kernel module will ensure that lookup() and
340 * This feature is enabled by default when supported by the kernel.
347 * If this feature is enabled, the kernel will cache and have
368 * This feature is enabled by default when supported by the kernel.
373 * Indicates that the kernel supports caching symlinks in its page cache.
380 * If the kernel supports it (>= 4.20), you can enable this feature by
386 * Indicates support for zero-message opendirs. If this flag is set in
389 * opendir and releasedir messages will be handled in the kernel. (If this
401 * then the FUSE kernel module supports invalidating cached pages only on
407 * requests to the kernel.
426 * dentry, then any overmounts are left alone and until ->d_revalidate()
429 * Note: ->d_revalidate() is not called for the case of following a submount,
430 * so invalidation will only be triggered for the non-overmounted case.
437 * Indicates that an extended 'struct fuse_setxattr' is used by the kernel
438 * side - extra_flags are passed, which are used (as of now by acl) processing.
447 * FUSE_IOCTL_UNRESTRICTED: not restricted to well-formed ioctls, retry allowed
461 * Connection information, passed to the ->init() method
463 * Some of the elements are read-write, these can be changed to
469 * Major version of the protocol (read-only)
474 * Minor version of the protocol (read-only)
487 * limited by the kernel.
491 * using the ``-o max_read=<n>`` mount option. At some point
503 * Capability flags that the kernel supports (read-only)
518 * total number is not limited by other means. As of kernel
521 * 1. Read-ahead requests
524 * Read-ahead requests are generated (if max_readahead is
525 * non-zero) by the kernel to preemptively fill its caches
531 * direct I/O request. In this case the kernel will internally
536 * requests: writeback requests (limited by the kernel's
546 * Kernel congestion threshold parameter. If the number of pending
547 * background requests exceeds this number, the FUSE kernel module will
548 * mark the filesystem as "congested". This instructs the kernel to
551 * to sleep instead of using a busy-loop).
556 * When FUSE_CAP_WRITEBACK_CACHE is enabled, the kernel is responsible
560 * the kernel timestamps (nanoseconds), the mtime and ctime values used
561 * by kernel and filesystem will differ (and result in an apparent
565 * kernel about the timestamp granularity supported by the file-system.
567 * nano-second resolution. Filesystems supporting only second resolution
573 * For future use.
583 * This function parses several command-line options that can be used
595 * -o max_write=N sets conn->max_write
596 * -o max_readahead=N sets conn->max_readahead
597 * -o max_background=N sets conn->max_background
598 * -o congestion_threshold=N sets conn->congestion_threshold
599 * -o async_read sets FUSE_CAP_ASYNC_READ in conn->want
600 * -o sync_read unsets FUSE_CAP_ASYNC_READ in conn->want
601 * -o atomic_o_trunc sets FUSE_CAP_ATOMIC_O_TRUNC in conn->want
602 * -o no_remote_lock Equivalent to -o no_remote_flock,no_remote_posix_lock
603 * -o no_remote_flock Unsets FUSE_CAP_FLOCK_LOCKS in conn->want
604 * -o no_remote_posix_lock Unsets FUSE_CAP_POSIX_LOCKS in conn->want
605 * -o [no_]splice_write (un-)sets FUSE_CAP_SPLICE_WRITE in conn->want
606 * -o [no_]splice_move (un-)sets FUSE_CAP_SPLICE_MOVE in conn->want
607 * -o [no_]splice_read (un-)sets FUSE_CAP_SPLICE_READ in conn->want
608 * -o [no_]auto_inval_data (un-)sets FUSE_CAP_AUTO_INVAL_DATA in conn->want
609 * -o readdirplus=no unsets FUSE_CAP_READDIRPLUS in conn->want
610 * -o readdirplus=yes sets FUSE_CAP_READDIRPLUS and unsets
611 * FUSE_CAP_READDIRPLUS_AUTO in conn->want
612 * -o readdirplus=auto sets FUSE_CAP_READDIRPLUS and
613 * FUSE_CAP_READDIRPLUS_AUTO in conn->want
614 * -o [no_]async_dio (un-)sets FUSE_CAP_ASYNC_DIO in conn->want
615 * -o [no_]writeback_cache (un-)sets FUSE_CAP_WRITEBACK_CACHE in conn->want
616 * -o time_gran=N sets conn->time_gran
640 * @return 0 on success, -1 on failure
665 /* ----------------------------------------------------------- *
667 * ----------------------------------------------------------- */
705 * Don't use splice(2)
718 * Always use splice(2) to copy data from one file descriptor
719 * to another. If splice is not available, return -EINVAL.
735 * Makes the operations on the pipe non-blocking (if the pipe
821 /* .fd = */ -1, \
840 * @return actual number of bytes copied or -errno on error
845 /* ----------------------------------------------------------- *
847 * ----------------------------------------------------------- */
859 * @return 0 on success, -1 on failure
918 /* ----------------------------------------------------------- *
920 * ----------------------------------------------------------- */
934 * On 32bit systems please add -D_FILE_OFFSET_BITS=64 to your compile flags!
941 { unsigned _fuse_off_t_must_be_64bit:((sizeof(off_t) == 8) ? 1 : -1); };