]>
Commit | Line | Data |
---|---|---|
852eb3ae DS |
1 | # SPDX-License-Identifier: GPL-2.0 |
2 | ||
335debee | 3 | config BTRFS_FS |
aa825914 | 4 | tristate "Btrfs filesystem support" |
d5178578 JT |
5 | select CRYPTO |
6 | select CRYPTO_CRC32C | |
314c4cd6 | 7 | select LIBCRC32C |
3951e7f0 | 8 | select CRYPTO_XXHASH |
3831bf00 | 9 | select CRYPTO_SHA256 |
78f926f7 | 10 | select CRYPTO_BLAKE2B |
335debee AD |
11 | select ZLIB_INFLATE |
12 | select ZLIB_DEFLATE | |
a6fa6fae LZ |
13 | select LZO_COMPRESS |
14 | select LZO_DECOMPRESS | |
5c1aab1d NT |
15 | select ZSTD_COMPRESS |
16 | select ZSTD_DECOMPRESS | |
f85781fb | 17 | select FS_IOMAP |
53b381b3 | 18 | select RAID6_PQ |
10e78e3a | 19 | select XOR_BLOCKS |
83fe27ea | 20 | select SRCU |
b05fbcc3 CL |
21 | depends on !PPC_256K_PAGES # powerpc |
22 | depends on !PAGE_SIZE_256KB # hexagon | |
53b381b3 | 23 | |
335debee | 24 | help |
4204617d DS |
25 | Btrfs is a general purpose copy-on-write filesystem with extents, |
26 | writable snapshotting, support for multiple devices and many more | |
27 | features focused on fault tolerance, repair and easy administration. | |
335debee | 28 | |
4204617d DS |
29 | The filesystem disk format is no longer unstable, and it's not |
30 | expected to change unless there are strong reasons to do so. If there | |
31 | is a format change, file systems with a unchanged format will | |
32 | continue to be mountable and usable by newer kernels. | |
33 | ||
34 | For more information, please see the web pages at | |
35 | http://btrfs.wiki.kernel.org. | |
335debee AD |
36 | |
37 | To compile this file system support as a module, choose M here. The | |
38 | module will be called btrfs. | |
39 | ||
40 | If unsure, say N. | |
bef62ef3 CH |
41 | |
42 | config BTRFS_FS_POSIX_ACL | |
43 | bool "Btrfs POSIX Access Control Lists" | |
44 | depends on BTRFS_FS | |
45 | select FS_POSIX_ACL | |
46 | help | |
47 | POSIX Access Control Lists (ACLs) support permissions for users and | |
48 | groups beyond the owner/group/world scheme. | |
49 | ||
bef62ef3 | 50 | If you don't know what Access Control Lists are, say N |
c975dd46 SB |
51 | |
52 | config BTRFS_FS_CHECK_INTEGRITY | |
53 | bool "Btrfs with integrity check tool compiled in (DANGEROUS)" | |
54 | depends on BTRFS_FS | |
55 | help | |
56 | Adds code that examines all block write requests (including | |
57 | writes of the super block). The goal is to verify that the | |
58 | state of the filesystem on disk is always consistent, i.e., | |
59 | after a power-loss or kernel panic event the filesystem is | |
60 | in a consistent state. | |
61 | ||
62 | If the integrity check tool is included and activated in | |
63 | the mount options, plenty of kernel memory is used, and | |
64 | plenty of additional CPU cycles are spent. Enabling this | |
65 | functionality is not intended for normal use. | |
66 | ||
67 | In most cases, unless you are a btrfs developer who needs | |
68 | to verify the integrity of (super)-block write requests | |
69 | during the run of a regression test, say N | |
74255aa0 JB |
70 | |
71 | config BTRFS_FS_RUN_SANITY_TESTS | |
72 | bool "Btrfs will run sanity tests upon loading" | |
73 | depends on BTRFS_FS | |
74 | help | |
75 | This will run some basic sanity tests on the free space cache | |
76 | code to make sure it is acting as it should. These are mostly | |
a26a8746 MW |
77 | regression tests and are only really interesting to btrfs |
78 | developers. | |
74255aa0 JB |
79 | |
80 | If unsure, say N. | |
81 | ||
6d49ba1b ES |
82 | config BTRFS_DEBUG |
83 | bool "Btrfs debugging support" | |
84 | depends on BTRFS_FS | |
85 | help | |
86 | Enable run-time debugging support for the btrfs filesystem. This may | |
87 | enable additional and expensive checks with negative impact on | |
88 | performance, or export extra information via sysfs. | |
89 | ||
90 | If unsure, say N. | |
2e17c7c6 JB |
91 | |
92 | config BTRFS_ASSERT | |
93 | bool "Btrfs assert support" | |
94 | depends on BTRFS_FS | |
95 | help | |
96 | Enable run-time assertion checking. This will result in panics if | |
97 | any of the assertions trip. This is meant for btrfs developers only. | |
98 | ||
99 | If unsure, say N. | |
fd708b81 JB |
100 | |
101 | config BTRFS_FS_REF_VERIFY | |
102 | bool "Btrfs with the ref verify tool compiled in" | |
103 | depends on BTRFS_FS | |
104 | default n | |
105 | help | |
106 | Enable run-time extent reference verification instrumentation. This | |
107 | is meant to be used by btrfs developers for tracking down extent | |
108 | reference problems or verifying they didn't break something. | |
109 | ||
110 | If unsure, say N. |