1# SPDX-License-Identifier: GPL-2.0-only
2
3config BCACHE
4	tristate "Block device as cache"
5	select BLOCK_HOLDER_DEPRECATED if SYSFS
6	select CRC64
7	help
8	Allows a block device to be used as cache for other devices; uses
9	a btree for indexing and the layout is optimized for SSDs.
10
11	See Documentation/admin-guide/bcache.rst for details.
12
13config BCACHE_DEBUG
14	bool "Bcache debugging"
15	depends on BCACHE
16	help
17	Don't select this option unless you're a developer
18
19	Enables extra debugging tools, allows expensive runtime checks to be
20	turned on.
21
22config BCACHE_CLOSURES_DEBUG
23	bool "Debug closures"
24	depends on BCACHE
25	select DEBUG_FS
26	help
27	Keeps all active closures in a linked list and provides a debugfs
28	interface to list them, which makes it possible to see asynchronous
29	operations that get stuck.
30
31config BCACHE_ASYNC_REGISTRATION
32	bool "Asynchronous device registration (EXPERIMENTAL)"
33	depends on BCACHE
34	help
35	Add a sysfs file /sys/fs/bcache/register_async. Writing registering
36	device path into this file will returns immediately and the real
37	registration work is handled in kernel work queue in asynchronous
38	way.
39