# SPDX-License-Identifier: GPL-2.0-only

config CACHEFILES
	tristate "Filesystem caching on files"
	depends on FSCACHE && BLOCK
	help
	  This permits use of a mounted filesystem as a cache for other
	  filesystems - primarily networking filesystems - thus allowing fast
	  local disk to enhance the speed of slower devices.

	  See Documentation/filesystems/caching/cachefiles.rst for more
	  information.

config CACHEFILES_DEBUG
	bool "Debug CacheFiles"
	depends on CACHEFILES
	help
	  This permits debugging to be dynamically enabled in the filesystem
	  caching on files module.  If this is set, the debugging output may be
	  enabled by setting bits in /sys/modules/cachefiles/parameter/debug or
	  by including a debugging specifier in /etc/cachefilesd.conf.

config CACHEFILES_ERROR_INJECTION
	bool "Provide error injection for cachefiles"
	depends on CACHEFILES && SYSCTL
	help
	  This permits error injection to be enabled in cachefiles whilst a
	  cache is in service.

config CACHEFILES_ONDEMAND
	bool "Support for on-demand read"
	depends on CACHEFILES
	default n
	help
	  This permits userspace to enable the cachefiles on-demand read mode.
	  In this mode, when a cache miss occurs, responsibility for fetching
	  the data lies with the cachefiles backend instead of with the netfs
	  and is delegated to userspace.

	  If unsure, say N.
