blob: 46bcf0e649f5c997f7d6977ec3978312d98f7283 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001config XFS_FS
2 tristate "XFS filesystem support"
David Howells93614012006-09-30 20:45:40 +02003 depends on BLOCK
Christoph Hellwigd5cf09b2014-07-30 09:12:05 +10004 depends on (64BIT || LBDAF)
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
Dave Chinner742ae1e2013-04-30 21:39:34 +100088config XFS_WARN
89 bool "XFS Verbose Warnings"
90 depends on XFS_FS && !XFS_DEBUG
91 help
92 Say Y here to get an XFS build with many additional warnings.
93 It converts ASSERT checks to WARN, so will log any out-of-bounds
94 conditions that occur that would otherwise be missed. It is much
95 lighter weight than XFS_DEBUG and does not modify algorithms and will
96 not cause the kernel to panic on non-fatal errors.
97
98 However, similar to XFS_DEBUG, it is only advisable to use this if you
99 are debugging a particular problem.
100
Christoph Hellwig7788fae2008-04-21 17:22:27 +1000101config XFS_DEBUG
Kees Cookd9777b82012-10-02 11:19:27 -0700102 bool "XFS Debugging support"
103 depends on XFS_FS
Christoph Hellwig7788fae2008-04-21 17:22:27 +1000104 help
105 Say Y here to get an XFS build with many debugging features,
106 including ASSERT checks, function wrappers around macros,
107 and extra sanity-checking functions in various code paths.
108
109 Note that the resulting code will be HUGE and SLOW, and probably
110 not useful unless you are debugging a particular problem.
111
112 Say N unless you are an XFS developer, or you play one on TV.
Brian Foster1040960e2017-06-14 21:29:13 -0700113
114config XFS_ASSERT_FATAL
115 bool "XFS fatal asserts"
116 default y
117 depends on XFS_FS && XFS_DEBUG
118 help
119 Set the default DEBUG mode ASSERT failure behavior.
120
121 Say Y here to cause DEBUG mode ASSERT failures to result in fatal
122 errors that BUG() the kernel by default. If you say N, ASSERT failures
123 result in warnings.
124
125 This behavior can be modified at runtime via sysfs.