1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 23ef7784eSAlexey Dobriyanconfig FUSE_FS 33ef7784eSAlexey Dobriyan tristate "FUSE (Filesystem in Userspace) support" 460bcc88aSSeth Forshee select FS_POSIX_ACL 5a4c9ab1dSJoanne Koong select FS_IOMAP 63ef7784eSAlexey Dobriyan help 73ef7784eSAlexey Dobriyan With FUSE it is possible to implement a fully functional filesystem 83ef7784eSAlexey Dobriyan in a userspace program. 93ef7784eSAlexey Dobriyan 10807185ebSRobert P. J. Day There's also a companion library: libfuse2. This library is available 11807185ebSRobert P. J. Day from the FUSE homepage: 12c1b0c627SAndré Almeida <https://github.com/libfuse/> 13807185ebSRobert P. J. Day although chances are your distribution already has that library 14807185ebSRobert P. J. Day installed if you've installed the "fuse" package itself. 153ef7784eSAlexey Dobriyan 16*b3c7ab1dSMiklos Szeredi See <file:Documentation/filesystems/fuse/fuse.rst> for more information. 173ef7784eSAlexey Dobriyan See <file:Documentation/Changes> for needed library/utility version. 183ef7784eSAlexey Dobriyan 193ef7784eSAlexey Dobriyan If you want to develop a userspace FS, or if you want to use 203ef7784eSAlexey Dobriyan a filesystem based on FUSE, answer Y or M. 21807185ebSRobert P. J. Day 22807185ebSRobert P. J. Dayconfig CUSE 23807185ebSRobert P. J. Day tristate "Character device in Userspace support" 24807185ebSRobert P. J. Day depends on FUSE_FS 25807185ebSRobert P. J. Day help 26807185ebSRobert P. J. Day This FUSE extension allows character devices to be 27807185ebSRobert P. J. Day implemented in userspace. 28807185ebSRobert P. J. Day 29807185ebSRobert P. J. Day If you want to develop or use a userspace character device 30807185ebSRobert P. J. Day based on CUSE, answer Y or M. 31a62a8ef9SStefan Hajnoczi 32a62a8ef9SStefan Hajnocziconfig VIRTIO_FS 33a62a8ef9SStefan Hajnoczi tristate "Virtio Filesystem" 34a62a8ef9SStefan Hajnoczi depends on FUSE_FS 35a62a8ef9SStefan Hajnoczi select VIRTIO 36a62a8ef9SStefan Hajnoczi help 37a62a8ef9SStefan Hajnoczi The Virtio Filesystem allows guests to mount file systems from the 38a62a8ef9SStefan Hajnoczi host. 39a62a8ef9SStefan Hajnoczi 40a62a8ef9SStefan Hajnoczi If you want to share files between guests or with the host, answer Y 41a62a8ef9SStefan Hajnoczi or M. 421dd53957SVivek Goyal 431dd53957SVivek Goyalconfig FUSE_DAX 441dd53957SVivek Goyal bool "Virtio Filesystem Direct Host Memory Access support" 451dd53957SVivek Goyal default y 46c2d0ad00SVivek Goyal select INTERVAL_TREE 471dd53957SVivek Goyal depends on VIRTIO_FS 481dd53957SVivek Goyal depends on FS_DAX 49afd586f0SChristoph Hellwig depends on DAX 501dd53957SVivek Goyal help 511dd53957SVivek Goyal This allows bypassing guest page cache and allows mapping host page 521dd53957SVivek Goyal cache directly in guest address space. 531dd53957SVivek Goyal 541dd53957SVivek Goyal If you want to allow mounting a Virtio Filesystem with the "dax" 551dd53957SVivek Goyal option, answer Y. 567dc4e97aSAmir Goldstein 577dc4e97aSAmir Goldsteinconfig FUSE_PASSTHROUGH 587dc4e97aSAmir Goldstein bool "FUSE passthrough operations support" 597dc4e97aSAmir Goldstein default y 607dc4e97aSAmir Goldstein depends on FUSE_FS 617dc4e97aSAmir Goldstein select FS_STACK 627dc4e97aSAmir Goldstein help 637dc4e97aSAmir Goldstein This allows bypassing FUSE server by mapping specific FUSE operations 647dc4e97aSAmir Goldstein to be performed directly on a backing file. 657dc4e97aSAmir Goldstein 667dc4e97aSAmir Goldstein If you want to allow passthrough operations, answer Y. 6724fe962cSBernd Schubert 6824fe962cSBernd Schubertconfig FUSE_IO_URING 6924fe962cSBernd Schubert bool "FUSE communication over io-uring" 7024fe962cSBernd Schubert default y 7124fe962cSBernd Schubert depends on FUSE_FS 7224fe962cSBernd Schubert depends on IO_URING 7324fe962cSBernd Schubert help 7424fe962cSBernd Schubert This allows sending FUSE requests over the io-uring interface and 7524fe962cSBernd Schubert also adds request core affinity. 7624fe962cSBernd Schubert 7724fe962cSBernd Schubert If you want to allow fuse server/client communication through io-uring, 7824fe962cSBernd Schubert answer Y 79