11c6fdbd8SKent Overstreet 21c6fdbd8SKent Overstreetconfig BCACHEFS_FS 3dbc7deb2SKent Overstreet tristate "bcachefs filesystem support (EXPERIMENTAL)" 41c6fdbd8SKent Overstreet depends on BLOCK 51c6fdbd8SKent Overstreet select EXPORTFS 61c6fdbd8SKent Overstreet select CLOSURES 71c6fdbd8SKent Overstreet select LIBCRC32C 804c2c34fSKent Overstreet select CRC64 91c6fdbd8SKent Overstreet select FS_POSIX_ACL 101c6fdbd8SKent Overstreet select LZ4_COMPRESS 111c6fdbd8SKent Overstreet select LZ4_DECOMPRESS 12986e9842SKent Overstreet select LZ4HC_COMPRESS 13986e9842SKent Overstreet select LZ4HC_DECOMPRESS 141c6fdbd8SKent Overstreet select ZLIB_DEFLATE 151c6fdbd8SKent Overstreet select ZLIB_INFLATE 161c6fdbd8SKent Overstreet select ZSTD_COMPRESS 171c6fdbd8SKent Overstreet select ZSTD_DECOMPRESS 181c6fdbd8SKent Overstreet select CRYPTO_SHA256 191c6fdbd8SKent Overstreet select CRYPTO_CHACHA20 201c6fdbd8SKent Overstreet select CRYPTO_POLY1305 211c6fdbd8SKent Overstreet select KEYS 22cd575ddfSKent Overstreet select RAID6_PQ 23cd575ddfSKent Overstreet select XOR_BLOCKS 2441e63382Sjpsollie select XXHASH 25876c7af3SKent Overstreet select SRCU 26615f867cSKent Overstreet select SYMBOLIC_ERRNAME 2792a8b224SKuan-Wei Chiu select MIN_HEAP 281c6fdbd8SKent Overstreet help 291c6fdbd8SKent Overstreet The bcachefs filesystem - a modern, copy on write filesystem, with 301c6fdbd8SKent Overstreet support for multiple devices, compression, checksumming, etc. 311c6fdbd8SKent Overstreet 321c6fdbd8SKent Overstreetconfig BCACHEFS_QUOTA 331c6fdbd8SKent Overstreet bool "bcachefs quota support" 341c6fdbd8SKent Overstreet depends on BCACHEFS_FS 351c6fdbd8SKent Overstreet select QUOTACTL 361c6fdbd8SKent Overstreet 376201d91eSKent Overstreetconfig BCACHEFS_ERASURE_CODING 386201d91eSKent Overstreet bool "bcachefs erasure coding (RAID5/6) support (EXPERIMENTAL)" 396201d91eSKent Overstreet depends on BCACHEFS_FS 406201d91eSKent Overstreet select QUOTACTL 416201d91eSKent Overstreet help 426201d91eSKent Overstreet This enables the "erasure_code" filesysystem and inode option, which 436201d91eSKent Overstreet organizes data into reed-solomon stripes instead of ordinary 446201d91eSKent Overstreet replication. 456201d91eSKent Overstreet 466201d91eSKent Overstreet WARNING: this feature is still undergoing on disk format changes, and 476201d91eSKent Overstreet should only be enabled for testing purposes. 486201d91eSKent Overstreet 491c6fdbd8SKent Overstreetconfig BCACHEFS_POSIX_ACL 501c6fdbd8SKent Overstreet bool "bcachefs POSIX ACL support" 511c6fdbd8SKent Overstreet depends on BCACHEFS_FS 521c6fdbd8SKent Overstreet select FS_POSIX_ACL 531c6fdbd8SKent Overstreet 541c6fdbd8SKent Overstreetconfig BCACHEFS_DEBUG 551c6fdbd8SKent Overstreet bool "bcachefs debugging" 561c6fdbd8SKent Overstreet depends on BCACHEFS_FS 571c6fdbd8SKent Overstreet help 581c6fdbd8SKent Overstreet Enables many extra debugging checks and assertions. 591c6fdbd8SKent Overstreet 601c6fdbd8SKent Overstreet The resulting code will be significantly slower than normal; you 611c6fdbd8SKent Overstreet probably shouldn't select this option unless you're a developer. 621c6fdbd8SKent Overstreet 631c6fdbd8SKent Overstreetconfig BCACHEFS_TESTS 641c6fdbd8SKent Overstreet bool "bcachefs unit and performance tests" 651c6fdbd8SKent Overstreet depends on BCACHEFS_FS 661c6fdbd8SKent Overstreet help 671c6fdbd8SKent Overstreet Include some unit and performance tests for the core btree code 681c6fdbd8SKent Overstreet 69c807ca95SDaniel Hillconfig BCACHEFS_LOCK_TIME_STATS 70c807ca95SDaniel Hill bool "bcachefs lock time statistics" 71c807ca95SDaniel Hill depends on BCACHEFS_FS 72c807ca95SDaniel Hill help 73c807ca95SDaniel Hill Expose statistics for how long we held a lock in debugfs 74c807ca95SDaniel Hill 751c6fdbd8SKent Overstreetconfig BCACHEFS_NO_LATENCY_ACCT 761c6fdbd8SKent Overstreet bool "disable latency accounting and time stats" 771c6fdbd8SKent Overstreet depends on BCACHEFS_FS 781c6fdbd8SKent Overstreet help 791c6fdbd8SKent Overstreet This disables device latency tracking and time stats, only for performance testing 8092095781SDaniel Hill 8101117332SKent Overstreetconfig BCACHEFS_SIX_OPTIMISTIC_SPIN 8201117332SKent Overstreet bool "Optimistic spinning for six locks" 8301117332SKent Overstreet depends on BCACHEFS_FS 8401117332SKent Overstreet depends on SMP 8501117332SKent Overstreet default y 8601117332SKent Overstreet help 8701117332SKent Overstreet Instead of immediately sleeping when attempting to take a six lock that 8801117332SKent Overstreet is held by another thread, spin for a short while, as long as the 8901117332SKent Overstreet thread owning the lock is running. 9001117332SKent Overstreet 9132ed4a62SKent Overstreetconfig BCACHEFS_PATH_TRACEPOINTS 9232ed4a62SKent Overstreet bool "Extra btree_path tracepoints" 93*d36b3e74SGeert Uytterhoeven depends on BCACHEFS_FS && TRACING 9432ed4a62SKent Overstreet help 9532ed4a62SKent Overstreet Enable extra tracepoints for debugging btree_path operations; we don't 9632ed4a62SKent Overstreet normally want these enabled because they happen at very high rates. 9732ed4a62SKent Overstreet 9892095781SDaniel Hillconfig MEAN_AND_VARIANCE_UNIT_TEST 9992095781SDaniel Hill tristate "mean_and_variance unit tests" if !KUNIT_ALL_TESTS 10092095781SDaniel Hill depends on KUNIT 1014db8ac86SKent Overstreet depends on BCACHEFS_FS 10292095781SDaniel Hill default KUNIT_ALL_TESTS 10392095781SDaniel Hill help 10492095781SDaniel Hill This option enables the kunit tests for mean_and_variance module. 10592095781SDaniel Hill If unsure, say N. 106