nuttx/fs/Kconfig
guohao15 86e00896d3 fs:notify add support for inotify
support API: open close read write unlink mkdir rename fchstat rmdir symlink

Signed-off-by: guohao15 <guohao15@xiaomi.com>
2024-08-22 01:50:37 +08:00

140 lines
4.3 KiB
Plaintext

#
# For a description of the syntax of this configuration file,
# see the file kconfig-language.txt in the NuttX tools repository.
#
comment "File system configuration"
config DISABLE_MOUNTPOINT
bool "Disable support for mount points"
default n
config FS_LARGEFILE
bool "Large File Support"
default n
---help---
Support files which's length is larger than 4GB:
https://www.opengroup.org/platform/lfs.html
Note: the protected and kernel mode on 32bit platform can't exceed
the 4GB limitation since the auto generated proxy and stub still
cut 64bit to 32bit value. Please check tools/mksyscall.c for more
information.
config FS_AUTOMOUNTER
bool "Auto-mounter"
default n
depends on !DISABLE_MOUNTPOINT
select SCHED_LPWORK
---help---
The automounter provides an OS-internal mechanism for automatically
mounting and unmounting removable media as the media is inserted and
removed. See include/nuttx/fs/automout.h for interfacing details.
config FS_AUTOMOUNTER_DEBUG
bool "Auto-mounter debug"
default n
depends on FS_AUTOMOUNTER && DEBUG_FEATURES
---help---
Normally, the auto-mounter will generate debug output when sub-system
level file system debug is enabled. This option will select debug
output from the logic related to the auto-mount feature even when file
system debug is not enable. This is useful primarily for in vivo
unit testing of the auto-mount feature.
config FS_AUTOMOUNTER_DRIVER
bool "Auto-mounter driver"
default n
depends on FS_AUTOMOUNTER
---help---
Enabling this option will lead to registering of a character driver
on FS_AUTOMOUNTER_VFS_PATH + mount point path for auto-mounter.
Example: /var/mnt/sdcard0
config FS_AUTOMOUNTER_VFS_PATH
string "Path to auto-mounter driver"
default "/var"
depends on FS_AUTOMOUNTER_DRIVER
---help---
The path to where auto-mounter driver will exist in the VFS namespace.
config FS_NEPOLL_DESCRIPTORS
int "Maximum number of default epoll descriptors for epoll_create1(2)"
default 8
---help---
The maximum number of default epoll descriptors for epoll_create1(2)
config FS_LOCK_BUCKET_SIZE
int "Maximum number of hash bucket using file locks"
default 0
config DISABLE_PSEUDOFS_OPERATIONS
bool "Disable pseudo-filesystem operations"
default DEFAULT_SMALL
---help---
Disable certain operations on pseudo-file systems include mkdir,
rmdir, unlink, and rename. These are necessary for the logical
completeness of the illusion created by the pseudo-filesystem.
However, in practical embedded system, they are seldom needed and
you can save a little FLASH space by disabling the capability.
config PSEUDOFS_ATTRIBUTES
bool "Pseudo-filesystem attributes"
default n
depends on !DISABLE_PSEUDOFS_OPERATIONS
---help---
Enable support for attributes(e.g. mode, uid, gid and time)
in the pseudo file system.
config PSEUDOFS_SOFTLINKS
bool "Pseudo-filesystem soft links"
default n
depends on !DISABLE_PSEUDOFS_OPERATIONS
---help---
Enable support for soft links in the pseudo file system. Soft
links are not supported within mounted volumes by any NuttX file
system. However, if this option is selected, then soft links
may be add in the pseudo file system. This might be useful, for
to link a directory in the pseudo-file system, such as /bin, to
to a directory in a mounted volume, say /mnt/sdcard/bin.
config PSEUDOFS_FILE
bool "Pseudo file support"
default n
depends on !DISABLE_PSEUDOFS_OPERATIONS
---help---
Support to create a file on pseudo filesystem.
config SENDFILE_BUFSIZE
int "sendfile() buffer size"
default 512
---help---
Size of the I/O buffer to allocate in sendfile(). Default: 512b
source "fs/vfs/Kconfig"
source "fs/aio/Kconfig"
source "fs/semaphore/Kconfig"
source "fs/mqueue/Kconfig"
source "fs/shm/Kconfig"
source "fs/mmap/Kconfig"
source "fs/partition/Kconfig"
source "fs/notify/Kconfig"
source "fs/fat/Kconfig"
source "fs/nfs/Kconfig"
source "fs/nxffs/Kconfig"
source "fs/romfs/Kconfig"
source "fs/cromfs/Kconfig"
source "fs/tmpfs/Kconfig"
source "fs/smartfs/Kconfig"
source "fs/binfs/Kconfig"
source "fs/procfs/Kconfig"
source "fs/spiffs/Kconfig"
source "fs/littlefs/Kconfig"
source "fs/unionfs/Kconfig"
source "fs/userfs/Kconfig"
source "fs/hostfs/Kconfig"
source "fs/rpmsgfs/Kconfig"
source "fs/zipfs/Kconfig"
source "fs/mnemofs/Kconfig"
source "fs/v9fs/Kconfig"