This is a squash of these changes cherry-picked from common-android13-5.10 ANDROID: fuse-bpf: Make compile and pass test ANDROID: fuse-bpf: set error_in to ENOENT in negative lookup ANDROID: fuse-bpf: Add ability to run ranges of tests to fuse_test ANDROID: fuse-bpf: Add test for lookup postfilter ANDROID: fuse-bpf: readddir postfilter fixes ANDROID: fix kernelci error in fs/fuse/dir.c ANDROID: fuse-bpf: Fix RCU/reference issue ANDROID: fuse-bpf: Always call revalidate for backing ANDROID: fuse-bpf: Adjust backing handle funcs ANDROID: fuse-bpf: Fix revalidate error path and backing handling ANDROID: fuse-bpf: Fix use of get_fuse_inode ANDROID: fuse: Don't use readdirplus w/ nodeid 0 ANDROID: fuse-bpf: Introduce readdirplus test case for fuse bpf ANDROID: fuse-bpf: Make sure force_again flag is false by default ANDROID: fuse-bpf: Make inodes with backing_fd reachable for regular FUSE fuse_iget Revert "ANDROID: fuse-bpf: use target instead of parent inode to execute backing revalidate" ANDROID: fuse-bpf: use target instead of parent inode to execute backing revalidate ANDROID: fuse-bpf: Fix misuse of args.out_args ANDROID: fuse-bpf: Fix non-fusebpf build ANDROID: fuse-bpf: Use fuse_bpf_args in uapi ANDROID: fuse-bpf: Fix read_iter ANDROID: fuse-bpf: Use cache and refcount ANDROID: fuse-bpf: Rename iocb_fuse to iocb_orig ANDROID: fuse-bpf: Fix fixattr in rename ANDROID: fuse-bpf: Fix readdir ANDROID: fuse-bpf: Fix lseek return value for offset 0 ANDROID: fuse-bpf: fix read_iter and write_iter ANDROID: fuse-bpf: fix special devices ANDROID: fuse-bpf: support FUSE_LSEEK ANDROID: fuse-bpf: Add support for FUSE_COPY_FILE_RANGE ANDROID: fuse-bpf: Report errors to finalize ANDROID: fuse-bpf: Avoid reusing uint64_t for file ANDROID: fuse-bpf: Fix CONFIG_FUSE_BPF typo in FUSE_FSYNCDIR ANDROID: fuse-bpf: Move fd operations to be synchronous ANDROID: fuse-bpf: Invalidate if lower is unhashed ANDROID: fuse-bpf: Move bpf earlier in fuse_permission ANDROID: fuse-bpf: Update attributes on file write ANDROID: fuse: allow mounting with no userspace daemon ANDROID: fuse-bpf: Support FUSE_STATFS ANDROID: fuse-bpf: Fix filldir ANDROID: fuse-bpf: fix fuse_create_open_finalize ANDROID: fuse: add bpf support for removexattr ANDROID: fuse-bpf: Fix truncate ANDROID: fuse-bpf: Support inotify ANDROID: fuse-bpf: Make compile with CONFIG_FUSE but no CONFIG_FUSE_BPF ANDROID: fuse-bpf: Fix perms on readdir ANDROID: fuse: Fix umasking in backing ANDROID: fs/fuse: Backing move returns EXDEV if TO not backed ANDROID: bpf-fuse: Fix Setattr ANDROID: fuse-bpf: Check if mkdir dentry setup ANDROID: fuse-bpf: Close backing fds in fuse_dentry_revalidate ANDROID: fuse-bpf: Close backing-fd on both paths ANDROID: fuse-bpf: Partial fix for mmap'd files ANDROID: fuse-bpf: Restore a missing const ANDROID: Add fuse-bpf self tests ANDROID: Add FUSE_BPF to gki_defconfig ANDROID: fuse-bpf v1 ANDROID: fuse: Move functions in preparation for fuse-bpf Bug: 202785178 Bug: 265206112 Test: test_fuse passes on linux. On cuttlefish, atest android.scopedstorage.cts.host.ScopedStorageHostTest passes with fuse-bpf enabled and disabled Change-Id: Idb099c281f9b39ff2c46fa3ebc63e508758416ee Signed-off-by: Paul Lawrence <paullawrence@google.com> Signed-off-by: Daniel Rosenberg <drosen@google.com>
63 lines
1.8 KiB
Plaintext
63 lines
1.8 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
config FUSE_FS
|
|
tristate "FUSE (Filesystem in Userspace) support"
|
|
select FS_POSIX_ACL
|
|
help
|
|
With FUSE it is possible to implement a fully functional filesystem
|
|
in a userspace program.
|
|
|
|
There's also a companion library: libfuse2. This library is available
|
|
from the FUSE homepage:
|
|
<https://github.com/libfuse/>
|
|
although chances are your distribution already has that library
|
|
installed if you've installed the "fuse" package itself.
|
|
|
|
See <file:Documentation/filesystems/fuse.rst> for more information.
|
|
See <file:Documentation/Changes> for needed library/utility version.
|
|
|
|
If you want to develop a userspace FS, or if you want to use
|
|
a filesystem based on FUSE, answer Y or M.
|
|
|
|
config CUSE
|
|
tristate "Character device in Userspace support"
|
|
depends on FUSE_FS
|
|
help
|
|
This FUSE extension allows character devices to be
|
|
implemented in userspace.
|
|
|
|
If you want to develop or use a userspace character device
|
|
based on CUSE, answer Y or M.
|
|
|
|
config VIRTIO_FS
|
|
tristate "Virtio Filesystem"
|
|
depends on FUSE_FS
|
|
select VIRTIO
|
|
help
|
|
The Virtio Filesystem allows guests to mount file systems from the
|
|
host.
|
|
|
|
If you want to share files between guests or with the host, answer Y
|
|
or M.
|
|
|
|
config FUSE_DAX
|
|
bool "Virtio Filesystem Direct Host Memory Access support"
|
|
default y
|
|
select INTERVAL_TREE
|
|
depends on VIRTIO_FS
|
|
depends on FS_DAX
|
|
depends on DAX
|
|
help
|
|
This allows bypassing guest page cache and allows mapping host page
|
|
cache directly in guest address space.
|
|
|
|
If you want to allow mounting a Virtio Filesystem with the "dax"
|
|
option, answer Y.
|
|
|
|
config FUSE_BPF
|
|
bool "Adds BPF to fuse"
|
|
depends on FUSE_FS
|
|
depends on BPF
|
|
help
|
|
Extends FUSE by adding BPF to prefilter calls and potentially pass to a
|
|
backing file system
|