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