Kconfig 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313
  1. #
  2. # File system configuration
  3. #
  4. menu "File systems"
  5. # Use unaligned word dcache accesses
  6. config DCACHE_WORD_ACCESS
  7. bool
  8. if BLOCK
  9. config FS_IOMAP
  10. bool
  11. source "fs/ext2/Kconfig"
  12. source "fs/ext4/Kconfig"
  13. source "fs/jbd2/Kconfig"
  14. config FS_MBCACHE
  15. # Meta block cache for Extended Attributes (ext2/ext3/ext4)
  16. tristate
  17. default y if EXT2_FS=y && EXT2_FS_XATTR
  18. default y if EXT4_FS=y
  19. default m if EXT2_FS_XATTR || EXT4_FS
  20. source "fs/reiserfs/Kconfig"
  21. source "fs/jfs/Kconfig"
  22. source "fs/xfs/Kconfig"
  23. source "fs/gfs2/Kconfig"
  24. source "fs/ocfs2/Kconfig"
  25. source "fs/btrfs/Kconfig"
  26. source "fs/nilfs2/Kconfig"
  27. source "fs/f2fs/Kconfig"
  28. config FS_DAX
  29. bool "Direct Access (DAX) support"
  30. depends on MMU
  31. depends on !(ARM || MIPS || SPARC)
  32. help
  33. Direct Access (DAX) can be used on memory-backed block devices.
  34. If the block device supports DAX and the filesystem supports DAX,
  35. then you can avoid using the pagecache to buffer I/Os. Turning
  36. on this option will compile in support for DAX; you will need to
  37. mount the filesystem using the -o dax option.
  38. If you do not have a block device that is capable of using this,
  39. or if unsure, say N. Saying Y will increase the size of the kernel
  40. by about 5kB.
  41. config FS_DAX_PMD
  42. bool
  43. default FS_DAX
  44. depends on FS_DAX
  45. depends on ZONE_DEVICE
  46. depends on TRANSPARENT_HUGEPAGE
  47. depends on BROKEN
  48. endif # BLOCK
  49. # Posix ACL utility routines
  50. #
  51. # Note: Posix ACLs can be implemented without these helpers. Never use
  52. # this symbol for ifdefs in core code.
  53. #
  54. config FS_POSIX_ACL
  55. def_bool n
  56. config EXPORTFS
  57. tristate
  58. config EXPORTFS_BLOCK_OPS
  59. bool "Enable filesystem export operations for block IO"
  60. help
  61. This option enables the export operations for a filesystem to support
  62. external block IO.
  63. config FILE_LOCKING
  64. bool "Enable POSIX file locking API" if EXPERT
  65. default y
  66. select PERCPU_RWSEM
  67. help
  68. This option enables standard file locking support, required
  69. for filesystems like NFS and for the flock() system
  70. call. Disabling this option saves about 11k.
  71. config MANDATORY_FILE_LOCKING
  72. bool "Enable Mandatory file locking"
  73. depends on FILE_LOCKING
  74. default y
  75. help
  76. This option enables files appropriately marked files on appropriely
  77. mounted filesystems to support mandatory locking.
  78. To the best of my knowledge this is dead code that no one cares about.
  79. source "fs/crypto/Kconfig"
  80. source "fs/notify/Kconfig"
  81. source "fs/quota/Kconfig"
  82. source "fs/autofs4/Kconfig"
  83. source "fs/fuse/Kconfig"
  84. source "fs/overlayfs/Kconfig"
  85. menu "Caches"
  86. source "fs/fscache/Kconfig"
  87. source "fs/cachefiles/Kconfig"
  88. endmenu
  89. if BLOCK
  90. menu "CD-ROM/DVD Filesystems"
  91. source "fs/isofs/Kconfig"
  92. source "fs/udf/Kconfig"
  93. endmenu
  94. endif # BLOCK
  95. if BLOCK
  96. menu "DOS/FAT/NT Filesystems"
  97. source "fs/fat/Kconfig"
  98. source "fs/ntfs/Kconfig"
  99. endmenu
  100. endif # BLOCK
  101. menu "Pseudo filesystems"
  102. source "fs/proc/Kconfig"
  103. source "fs/kernfs/Kconfig"
  104. source "fs/sysfs/Kconfig"
  105. config TMPFS
  106. bool "Tmpfs virtual memory file system support (former shm fs)"
  107. depends on SHMEM
  108. help
  109. Tmpfs is a file system which keeps all files in virtual memory.
  110. Everything in tmpfs is temporary in the sense that no files will be
  111. created on your hard drive. The files live in memory and swap
  112. space. If you unmount a tmpfs instance, everything stored therein is
  113. lost.
  114. See <file:Documentation/filesystems/tmpfs.txt> for details.
  115. config TMPFS_POSIX_ACL
  116. bool "Tmpfs POSIX Access Control Lists"
  117. depends on TMPFS
  118. select TMPFS_XATTR
  119. select FS_POSIX_ACL
  120. help
  121. POSIX Access Control Lists (ACLs) support additional access rights
  122. for users and groups beyond the standard owner/group/world scheme,
  123. and this option selects support for ACLs specifically for tmpfs
  124. filesystems.
  125. If you've selected TMPFS, it's possible that you'll also need
  126. this option as there are a number of Linux distros that require
  127. POSIX ACL support under /dev for certain features to work properly.
  128. For example, some distros need this feature for ALSA-related /dev
  129. files for sound to work properly. In short, if you're not sure,
  130. say Y.
  131. To learn more about Access Control Lists, visit the POSIX ACLs for
  132. Linux website <http://acl.bestbits.at/>.
  133. config TMPFS_XATTR
  134. bool "Tmpfs extended attributes"
  135. depends on TMPFS
  136. default n
  137. help
  138. Extended attributes are name:value pairs associated with inodes by
  139. the kernel or by users (see the attr(5) manual page, or visit
  140. <http://acl.bestbits.at/> for details).
  141. Currently this enables support for the trusted.* and
  142. security.* namespaces.
  143. You need this for POSIX ACL support on tmpfs.
  144. If unsure, say N.
  145. config HUGETLBFS
  146. bool "HugeTLB file system support"
  147. depends on X86 || IA64 || SPARC64 || (S390 && 64BIT) || \
  148. SYS_SUPPORTS_HUGETLBFS || BROKEN
  149. help
  150. hugetlbfs is a filesystem backing for HugeTLB pages, based on
  151. ramfs. For architectures that support it, say Y here and read
  152. <file:Documentation/vm/hugetlbpage.txt> for details.
  153. If unsure, say N.
  154. config HUGETLB_PAGE
  155. def_bool HUGETLBFS
  156. config ARCH_HAS_GIGANTIC_PAGE
  157. bool
  158. source "fs/configfs/Kconfig"
  159. source "fs/efivarfs/Kconfig"
  160. endmenu
  161. menuconfig MISC_FILESYSTEMS
  162. bool "Miscellaneous filesystems"
  163. default y
  164. ---help---
  165. Say Y here to get to see options for various miscellaneous
  166. filesystems, such as filesystems that came from other
  167. operating systems.
  168. This option alone does not add any kernel code.
  169. If you say N, all options in this submenu will be skipped and
  170. disabled; if unsure, say Y here.
  171. if MISC_FILESYSTEMS
  172. source "fs/orangefs/Kconfig"
  173. source "fs/adfs/Kconfig"
  174. source "fs/affs/Kconfig"
  175. source "fs/ecryptfs/Kconfig"
  176. source "fs/hfs/Kconfig"
  177. source "fs/hfsplus/Kconfig"
  178. source "fs/befs/Kconfig"
  179. source "fs/bfs/Kconfig"
  180. source "fs/efs/Kconfig"
  181. source "fs/jffs2/Kconfig"
  182. # UBIFS File system configuration
  183. source "fs/ubifs/Kconfig"
  184. source "fs/logfs/Kconfig"
  185. source "fs/cramfs/Kconfig"
  186. source "fs/squashfs/Kconfig"
  187. source "fs/freevxfs/Kconfig"
  188. source "fs/minix/Kconfig"
  189. source "fs/omfs/Kconfig"
  190. source "fs/hpfs/Kconfig"
  191. source "fs/qnx4/Kconfig"
  192. source "fs/qnx6/Kconfig"
  193. source "fs/romfs/Kconfig"
  194. source "fs/pstore/Kconfig"
  195. source "fs/sysv/Kconfig"
  196. source "fs/ufs/Kconfig"
  197. source "fs/exofs/Kconfig"
  198. endif # MISC_FILESYSTEMS
  199. source "fs/exofs/Kconfig.ore"
  200. menuconfig NETWORK_FILESYSTEMS
  201. bool "Network File Systems"
  202. default y
  203. depends on NET
  204. ---help---
  205. Say Y here to get to see options for network filesystems and
  206. filesystem-related networking code, such as NFS daemon and
  207. RPCSEC security modules.
  208. This option alone does not add any kernel code.
  209. If you say N, all options in this submenu will be skipped and
  210. disabled; if unsure, say Y here.
  211. if NETWORK_FILESYSTEMS
  212. source "fs/nfs/Kconfig"
  213. source "fs/nfsd/Kconfig"
  214. config GRACE_PERIOD
  215. tristate
  216. config LOCKD
  217. tristate
  218. depends on FILE_LOCKING
  219. select GRACE_PERIOD
  220. config LOCKD_V4
  221. bool
  222. depends on NFSD_V3 || NFS_V3
  223. depends on FILE_LOCKING
  224. default y
  225. config NFS_ACL_SUPPORT
  226. tristate
  227. select FS_POSIX_ACL
  228. config NFS_COMMON
  229. bool
  230. depends on NFSD || NFS_FS || LOCKD
  231. default y
  232. source "net/sunrpc/Kconfig"
  233. source "fs/ceph/Kconfig"
  234. source "fs/cifs/Kconfig"
  235. source "fs/ncpfs/Kconfig"
  236. source "fs/coda/Kconfig"
  237. source "fs/afs/Kconfig"
  238. source "fs/9p/Kconfig"
  239. endif # NETWORK_FILESYSTEMS
  240. source "fs/nls/Kconfig"
  241. source "fs/dlm/Kconfig"
  242. endmenu