blob: e685299eb3d2b402f566547384dacf4a23336cc9 [file] [log] [blame]
Thomas Gleixnerec8f24b2019-05-19 13:07:45 +01001# SPDX-License-Identifier: GPL-2.0-only
Linus Torvalds1da177e2005-04-16 15:20:36 -07002config XFS_FS
3 tristate "XFS filesystem support"
David Howells93614012006-09-30 20:45:40 +02004 depends on BLOCK
Christoph Hellwigd296d302009-01-19 02:02:57 +01005 select EXPORTFS
Christoph Hellwigbc02e862012-11-16 09:20:37 +11006 select LIBCRC32C
Christoph Hellwig68a9f5e2016-06-21 09:53:44 +10007 select FS_IOMAP
Linus Torvalds1da177e2005-04-16 15:20:36 -07008 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
Linus Torvalds1da177e2005-04-16 15:20:36 -070025config XFS_QUOTA
Nathan Scott538524a2005-11-03 13:55:06 +110026 bool "XFS Quota support"
Linus Torvalds1da177e2005-04-16 15:20:36 -070027 depends on XFS_FS
Jan Kara80f44b12010-08-17 12:14:44 +020028 select QUOTACTL
Linus Torvalds1da177e2005-04-16 15:20:36 -070029 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
Linus Torvalds1da177e2005-04-16 15:20:36 -070043config XFS_POSIX_ACL
Nathan Scott20ba0282005-09-08 15:34:58 +100044 bool "XFS POSIX ACL support"
Linus Torvalds1da177e2005-04-16 15:20:36 -070045 depends on XFS_FS
Christoph Hellwigef14f0c2009-06-10 17:07:47 +020046 select FS_POSIX_ACL
Linus Torvalds1da177e2005-04-16 15:20:36 -070047 help
48 POSIX Access Control Lists (ACLs) support permissions for users and
49 groups beyond the owner/group/world scheme.
50
Linus Torvalds1da177e2005-04-16 15:20:36 -070051 If you don't know what Access Control Lists are, say N.
52
Nathan Scott20ba0282005-09-08 15:34:58 +100053config XFS_RT
Nathan Scottd7ede1a2006-06-13 16:28:11 +100054 bool "XFS Realtime subvolume support"
55 depends on XFS_FS
Nathan Scott20ba0282005-09-08 15:34:58 +100056 help
57 If you say Y here you will be able to mount and use XFS filesystems
Nathan Scottd7ede1a2006-06-13 16:28:11 +100058 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.
Nathan Scott20ba0282005-09-08 15:34:58 +100066
Nathan Scottd7ede1a2006-06-13 16:28:11 +100067 See the xfs man page in section 5 for additional information.
Nathan Scott20ba0282005-09-08 15:34:58 +100068
69 If unsure, say N.
Christoph Hellwig7788fae2008-04-21 17:22:27 +100070
Darrick J. Wong36fd6e82017-10-17 21:37:34 -070071config 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
Darrick J. Wong84d42ea2018-05-14 06:34:36 -070088config 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
Dave Chinner742ae1e2013-04-30 21:39:34 +1000106config 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
Christoph Hellwig7788fae2008-04-21 17:22:27 +1000119config XFS_DEBUG
Kees Cookd9777b82012-10-02 11:19:27 -0700120 bool "XFS Debugging support"
121 depends on XFS_FS
Christoph Hellwig7788fae2008-04-21 17:22:27 +1000122 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.
Brian Foster1040960e2017-06-14 21:29:13 -0700131
132config 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.