1config XFS_FS
2	tristate "XFS filesystem support"
3	depends on BLOCK
4	depends on (64BIT || LBDAF)
5	select EXPORTFS
6	select LIBCRC32C
7	help
8	  XFS is a high performance journaling filesystem which originated
9	  on the SGI IRIX platform.  It is completely multi-threaded, can
10	  support large files and large filesystems, extended attributes,
11	  variable block sizes, is extent based, and makes extensive use of
12	  Btrees (directories, extents, free space) to aid both performance
13	  and scalability.
14
15	  Refer to the documentation at <http://oss.sgi.com/projects/xfs/>
16	  for complete details.  This implementation is on-disk compatible
17	  with the IRIX version of XFS.
18
19	  To compile this file system support as a module, choose M here: the
20	  module will be called xfs.  Be aware, however, that if the file
21	  system of your root partition is compiled as a module, you'll need
22	  to use an initial ramdisk (initrd) to boot.
23
24config XFS_QUOTA
25	bool "XFS Quota support"
26	depends on XFS_FS
27	select QUOTACTL
28	help
29	  If you say Y here, you will be able to set limits for disk usage on
30	  a per user and/or a per group basis under XFS.  XFS considers quota
31	  information as filesystem metadata and uses journaling to provide a
32	  higher level guarantee of consistency.  The on-disk data format for
33	  quota is also compatible with the IRIX version of XFS, allowing a
34	  filesystem to be migrated between Linux and IRIX without any need
35	  for conversion.
36
37	  If unsure, say N.  More comprehensive documentation can be found in
38	  README.quota in the xfsprogs package.  XFS quota can be used either
39	  with or without the generic quota support enabled (CONFIG_QUOTA) -
40	  they are completely independent subsystems.
41
42config XFS_POSIX_ACL
43	bool "XFS POSIX ACL support"
44	depends on XFS_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
50	  To learn more about Access Control Lists, visit the POSIX ACLs for
51	  Linux website <http://acl.bestbits.at/>.
52
53	  If you don't know what Access Control Lists are, say N.
54
55config XFS_RT
56	bool "XFS Realtime subvolume support"
57	depends on XFS_FS
58	help
59	  If you say Y here you will be able to mount and use XFS filesystems
60	  which contain a realtime subvolume.  The realtime subvolume is a
61	  separate area of disk space where only file data is stored.  It was
62	  originally designed to provide deterministic data rates suitable
63	  for media streaming applications, but is also useful as a generic
64	  mechanism for ensuring data and metadata/log I/Os are completely
65	  separated.  Regular file I/Os are isolated to a separate device
66	  from all other requests, and this can be done quite transparently
67	  to applications via the inherit-realtime directory inode flag.
68
69	  See the xfs man page in section 5 for additional information.
70
71	  If unsure, say N.
72
73config XFS_WARN
74	bool "XFS Verbose Warnings"
75	depends on XFS_FS && !XFS_DEBUG
76	help
77	  Say Y here to get an XFS build with many additional warnings.
78	  It converts ASSERT checks to WARN, so will log any out-of-bounds
79	  conditions that occur that would otherwise be missed. It is much
80	  lighter weight than XFS_DEBUG and does not modify algorithms and will
81	  not cause the kernel to panic on non-fatal errors.
82
83	  However, similar to XFS_DEBUG, it is only advisable to use this if you
84	  are debugging a particular problem.
85
86config XFS_DEBUG
87	bool "XFS Debugging support"
88	depends on XFS_FS
89	help
90	  Say Y here to get an XFS build with many debugging features,
91	  including ASSERT checks, function wrappers around macros,
92	  and extra sanity-checking functions in various code paths.
93
94	  Note that the resulting code will be HUGE and SLOW, and probably
95	  not useful unless you are debugging a particular problem.
96
97	  Say N unless you are an XFS developer, or you play one on TV.
98