Linux-libre 5.4.47-gnu
[librecmc/linux-libre.git] / fs / xfs / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 config XFS_FS
3         tristate "XFS filesystem support"
4         depends on BLOCK
5         select EXPORTFS
6         select LIBCRC32C
7         select FS_IOMAP
8         help
9           XFS is a high performance journaling filesystem which originated
10           on the SGI IRIX platform.  It is completely multi-threaded, can
11           support large files and large filesystems, extended attributes,
12           variable block sizes, is extent based, and makes extensive use of
13           Btrees (directories, extents, free space) to aid both performance
14           and scalability.
15
16           Refer to the documentation at <http://oss.sgi.com/projects/xfs/>
17           for complete details.  This implementation is on-disk compatible
18           with the IRIX version of XFS.
19
20           To compile this file system support as a module, choose M here: the
21           module will be called xfs.  Be aware, however, that if the file
22           system of your root partition is compiled as a module, you'll need
23           to use an initial ramdisk (initrd) to boot.
24
25 config XFS_QUOTA
26         bool "XFS Quota support"
27         depends on XFS_FS
28         select QUOTACTL
29         help
30           If you say Y here, you will be able to set limits for disk usage on
31           a per user and/or a per group basis under XFS.  XFS considers quota
32           information as filesystem metadata and uses journaling to provide a
33           higher level guarantee of consistency.  The on-disk data format for
34           quota is also compatible with the IRIX version of XFS, allowing a
35           filesystem to be migrated between Linux and IRIX without any need
36           for conversion.
37
38           If unsure, say N.  More comprehensive documentation can be found in
39           README.quota in the xfsprogs package.  XFS quota can be used either
40           with or without the generic quota support enabled (CONFIG_QUOTA) -
41           they are completely independent subsystems.
42
43 config XFS_POSIX_ACL
44         bool "XFS POSIX ACL support"
45         depends on XFS_FS
46         select FS_POSIX_ACL
47         help
48           POSIX Access Control Lists (ACLs) support permissions for users and
49           groups beyond the owner/group/world scheme.
50
51           If you don't know what Access Control Lists are, say N.
52
53 config XFS_RT
54         bool "XFS Realtime subvolume support"
55         depends on XFS_FS
56         help
57           If you say Y here you will be able to mount and use XFS filesystems
58           which contain a realtime subvolume.  The realtime subvolume is a
59           separate area of disk space where only file data is stored.  It was
60           originally designed to provide deterministic data rates suitable
61           for media streaming applications, but is also useful as a generic
62           mechanism for ensuring data and metadata/log I/Os are completely
63           separated.  Regular file I/Os are isolated to a separate device
64           from all other requests, and this can be done quite transparently
65           to applications via the inherit-realtime directory inode flag.
66
67           See the xfs man page in section 5 for additional information.
68
69           If unsure, say N.
70
71 config XFS_ONLINE_SCRUB
72         bool "XFS online metadata check support"
73         default n
74         depends on XFS_FS
75         help
76           If you say Y here you will be able to check metadata on a
77           mounted XFS filesystem.  This feature is intended to reduce
78           filesystem downtime by supplementing xfs_repair.  The key
79           advantage here is to look for problems proactively so that
80           they can be dealt with in a controlled manner.
81
82           This feature is considered EXPERIMENTAL.  Use with caution!
83
84           See the xfs_scrub man page in section 8 for additional information.
85
86           If unsure, say N.
87
88 config XFS_ONLINE_REPAIR
89         bool "XFS online metadata repair support"
90         default n
91         depends on XFS_FS && XFS_ONLINE_SCRUB
92         help
93           If you say Y here you will be able to repair metadata on a
94           mounted XFS filesystem.  This feature is intended to reduce
95           filesystem downtime by fixing minor problems before they cause the
96           filesystem to go down.  However, it requires that the filesystem be
97           formatted with secondary metadata, such as reverse mappings and inode
98           parent pointers.
99
100           This feature is considered EXPERIMENTAL.  Use with caution!
101
102           See the xfs_scrub man page in section 8 for additional information.
103
104           If unsure, say N.
105
106 config XFS_WARN
107         bool "XFS Verbose Warnings"
108         depends on XFS_FS && !XFS_DEBUG
109         help
110           Say Y here to get an XFS build with many additional warnings.
111           It converts ASSERT checks to WARN, so will log any out-of-bounds
112           conditions that occur that would otherwise be missed. It is much
113           lighter weight than XFS_DEBUG and does not modify algorithms and will
114           not cause the kernel to panic on non-fatal errors.
115
116           However, similar to XFS_DEBUG, it is only advisable to use this if you
117           are debugging a particular problem.
118
119 config XFS_DEBUG
120         bool "XFS Debugging support"
121         depends on XFS_FS
122         help
123           Say Y here to get an XFS build with many debugging features,
124           including ASSERT checks, function wrappers around macros,
125           and extra sanity-checking functions in various code paths.
126
127           Note that the resulting code will be HUGE and SLOW, and probably
128           not useful unless you are debugging a particular problem.
129
130           Say N unless you are an XFS developer, or you play one on TV.
131
132 config XFS_ASSERT_FATAL
133         bool "XFS fatal asserts"
134         default y
135         depends on XFS_FS && XFS_DEBUG
136         help
137           Set the default DEBUG mode ASSERT failure behavior.
138
139           Say Y here to cause DEBUG mode ASSERT failures to result in fatal
140           errors that BUG() the kernel by default. If you say N, ASSERT failures
141           result in warnings.
142
143           This behavior can be modified at runtime via sysfs.