xref: /linux-6.15/fs/bcachefs/Kconfig (revision dbc7deb2)
1
2config BCACHEFS_FS
3	tristate "bcachefs filesystem support (EXPERIMENTAL)"
4	depends on BLOCK
5	select EXPORTFS
6	select CLOSURES
7	select LIBCRC32C
8	select CRC64
9	select FS_POSIX_ACL
10	select LZ4_COMPRESS
11	select LZ4_DECOMPRESS
12	select ZLIB_DEFLATE
13	select ZLIB_INFLATE
14	select ZSTD_COMPRESS
15	select ZSTD_DECOMPRESS
16	select CRYPTO_SHA256
17	select CRYPTO_CHACHA20
18	select CRYPTO_POLY1305
19	select KEYS
20	select RAID6_PQ
21	select XOR_BLOCKS
22	select XXHASH
23	select SRCU
24	select SYMBOLIC_ERRNAME
25	select MEAN_AND_VARIANCE
26	help
27	The bcachefs filesystem - a modern, copy on write filesystem, with
28	support for multiple devices, compression, checksumming, etc.
29
30config BCACHEFS_QUOTA
31	bool "bcachefs quota support"
32	depends on BCACHEFS_FS
33	select QUOTACTL
34
35config BCACHEFS_POSIX_ACL
36	bool "bcachefs POSIX ACL support"
37	depends on BCACHEFS_FS
38	select FS_POSIX_ACL
39
40config BCACHEFS_DEBUG_TRANSACTIONS
41	bool "bcachefs runtime info"
42	depends on BCACHEFS_FS
43	default y
44	help
45	This makes the list of running btree transactions available in debugfs.
46
47	This is a highly useful debugging feature but does add a small amount of overhead.
48
49config BCACHEFS_DEBUG
50	bool "bcachefs debugging"
51	depends on BCACHEFS_FS
52	help
53	Enables many extra debugging checks and assertions.
54
55	The resulting code will be significantly slower than normal; you
56	probably shouldn't select this option unless you're a developer.
57
58config BCACHEFS_TESTS
59	bool "bcachefs unit and performance tests"
60	depends on BCACHEFS_FS
61	help
62	Include some unit and performance tests for the core btree code
63
64config BCACHEFS_LOCK_TIME_STATS
65       bool "bcachefs lock time statistics"
66       depends on BCACHEFS_FS
67       help
68       Expose statistics for how long we held a lock in debugfs
69
70config BCACHEFS_NO_LATENCY_ACCT
71	bool "disable latency accounting and time stats"
72	depends on BCACHEFS_FS
73	help
74	This disables device latency tracking and time stats, only for performance testing
75
76config MEAN_AND_VARIANCE_UNIT_TEST
77	tristate "mean_and_variance unit tests" if !KUNIT_ALL_TESTS
78	depends on KUNIT
79	select MEAN_AND_VARIANCE
80	default KUNIT_ALL_TESTS
81	help
82	  This option enables the kunit tests for mean_and_variance module.
83	  If unsure, say N.
84