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 271c6fdbd8SKent Overstreet help 281c6fdbd8SKent Overstreet The bcachefs filesystem - a modern, copy on write filesystem, with 291c6fdbd8SKent Overstreet support for multiple devices, compression, checksumming, etc. 301c6fdbd8SKent Overstreet 311c6fdbd8SKent Overstreetconfig BCACHEFS_QUOTA 321c6fdbd8SKent Overstreet bool "bcachefs quota support" 331c6fdbd8SKent Overstreet depends on BCACHEFS_FS 341c6fdbd8SKent Overstreet select QUOTACTL 351c6fdbd8SKent Overstreet 366201d91eSKent Overstreetconfig BCACHEFS_ERASURE_CODING 376201d91eSKent Overstreet bool "bcachefs erasure coding (RAID5/6) support (EXPERIMENTAL)" 386201d91eSKent Overstreet depends on BCACHEFS_FS 396201d91eSKent Overstreet select QUOTACTL 406201d91eSKent Overstreet help 416201d91eSKent Overstreet This enables the "erasure_code" filesysystem and inode option, which 426201d91eSKent Overstreet organizes data into reed-solomon stripes instead of ordinary 436201d91eSKent Overstreet replication. 446201d91eSKent Overstreet 456201d91eSKent Overstreet WARNING: this feature is still undergoing on disk format changes, and 466201d91eSKent Overstreet should only be enabled for testing purposes. 476201d91eSKent Overstreet 481c6fdbd8SKent Overstreetconfig BCACHEFS_POSIX_ACL 491c6fdbd8SKent Overstreet bool "bcachefs POSIX ACL support" 501c6fdbd8SKent Overstreet depends on BCACHEFS_FS 511c6fdbd8SKent Overstreet select FS_POSIX_ACL 521c6fdbd8SKent Overstreet 531c6fdbd8SKent Overstreetconfig BCACHEFS_DEBUG 541c6fdbd8SKent Overstreet bool "bcachefs debugging" 551c6fdbd8SKent Overstreet depends on BCACHEFS_FS 561c6fdbd8SKent Overstreet help 571c6fdbd8SKent Overstreet Enables many extra debugging checks and assertions. 581c6fdbd8SKent Overstreet 591c6fdbd8SKent Overstreet The resulting code will be significantly slower than normal; you 601c6fdbd8SKent Overstreet probably shouldn't select this option unless you're a developer. 611c6fdbd8SKent Overstreet 621c6fdbd8SKent Overstreetconfig BCACHEFS_TESTS 631c6fdbd8SKent Overstreet bool "bcachefs unit and performance tests" 641c6fdbd8SKent Overstreet depends on BCACHEFS_FS 651c6fdbd8SKent Overstreet help 661c6fdbd8SKent Overstreet Include some unit and performance tests for the core btree code 671c6fdbd8SKent Overstreet 68c807ca95SDaniel Hillconfig BCACHEFS_LOCK_TIME_STATS 69c807ca95SDaniel Hill bool "bcachefs lock time statistics" 70c807ca95SDaniel Hill depends on BCACHEFS_FS 71c807ca95SDaniel Hill help 72c807ca95SDaniel Hill Expose statistics for how long we held a lock in debugfs 73c807ca95SDaniel Hill 741c6fdbd8SKent Overstreetconfig BCACHEFS_NO_LATENCY_ACCT 751c6fdbd8SKent Overstreet bool "disable latency accounting and time stats" 761c6fdbd8SKent Overstreet depends on BCACHEFS_FS 771c6fdbd8SKent Overstreet help 781c6fdbd8SKent Overstreet This disables device latency tracking and time stats, only for performance testing 7992095781SDaniel Hill 8001117332SKent Overstreetconfig BCACHEFS_SIX_OPTIMISTIC_SPIN 8101117332SKent Overstreet bool "Optimistic spinning for six locks" 8201117332SKent Overstreet depends on BCACHEFS_FS 8301117332SKent Overstreet depends on SMP 8401117332SKent Overstreet default y 8501117332SKent Overstreet help 8601117332SKent Overstreet Instead of immediately sleeping when attempting to take a six lock that 8701117332SKent Overstreet is held by another thread, spin for a short while, as long as the 8801117332SKent Overstreet thread owning the lock is running. 8901117332SKent Overstreet 90*32ed4a62SKent Overstreetconfig BCACHEFS_PATH_TRACEPOINTS 91*32ed4a62SKent Overstreet bool "Extra btree_path tracepoints" 92*32ed4a62SKent Overstreet depends on BCACHEFS_FS 93*32ed4a62SKent Overstreet help 94*32ed4a62SKent Overstreet Enable extra tracepoints for debugging btree_path operations; we don't 95*32ed4a62SKent Overstreet normally want these enabled because they happen at very high rates. 96*32ed4a62SKent Overstreet 9792095781SDaniel Hillconfig MEAN_AND_VARIANCE_UNIT_TEST 9892095781SDaniel Hill tristate "mean_and_variance unit tests" if !KUNIT_ALL_TESTS 9992095781SDaniel Hill depends on KUNIT 1004db8ac86SKent Overstreet depends on BCACHEFS_FS 10192095781SDaniel Hill default KUNIT_ALL_TESTS 10292095781SDaniel Hill help 10392095781SDaniel Hill This option enables the kunit tests for mean_and_variance module. 10492095781SDaniel Hill If unsure, say N. 105