Kconfig 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315
  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/verity/Kconfig"
  81. source "fs/notify/Kconfig"
  82. source "fs/quota/Kconfig"
  83. source "fs/autofs4/Kconfig"
  84. source "fs/fuse/Kconfig"
  85. source "fs/overlayfs/Kconfig"
  86. menu "Caches"
  87. source "fs/fscache/Kconfig"
  88. source "fs/cachefiles/Kconfig"
  89. endmenu
  90. if BLOCK
  91. menu "CD-ROM/DVD Filesystems"
  92. source "fs/isofs/Kconfig"
  93. source "fs/udf/Kconfig"
  94. endmenu
  95. endif # BLOCK
  96. if BLOCK
  97. menu "DOS/FAT/NT Filesystems"
  98. source "fs/fat/Kconfig"
  99. source "fs/ntfs/Kconfig"
  100. endmenu
  101. endif # BLOCK
  102. menu "Pseudo filesystems"
  103. source "fs/proc/Kconfig"
  104. source "fs/kernfs/Kconfig"
  105. source "fs/sysfs/Kconfig"
  106. config TMPFS
  107. bool "Tmpfs virtual memory file system support (former shm fs)"
  108. depends on SHMEM
  109. help
  110. Tmpfs is a file system which keeps all files in virtual memory.
  111. Everything in tmpfs is temporary in the sense that no files will be
  112. created on your hard drive. The files live in memory and swap
  113. space. If you unmount a tmpfs instance, everything stored therein is
  114. lost.
  115. See <file:Documentation/filesystems/tmpfs.txt> for details.
  116. config TMPFS_POSIX_ACL
  117. bool "Tmpfs POSIX Access Control Lists"
  118. depends on TMPFS
  119. select TMPFS_XATTR
  120. select FS_POSIX_ACL
  121. help
  122. POSIX Access Control Lists (ACLs) support additional access rights
  123. for users and groups beyond the standard owner/group/world scheme,
  124. and this option selects support for ACLs specifically for tmpfs
  125. filesystems.
  126. If you've selected TMPFS, it's possible that you'll also need
  127. this option as there are a number of Linux distros that require
  128. POSIX ACL support under /dev for certain features to work properly.
  129. For example, some distros need this feature for ALSA-related /dev
  130. files for sound to work properly. In short, if you're not sure,
  131. say Y.
  132. To learn more about Access Control Lists, visit the POSIX ACLs for
  133. Linux website <http://acl.bestbits.at/>.
  134. config TMPFS_XATTR
  135. bool "Tmpfs extended attributes"
  136. depends on TMPFS
  137. default n
  138. help
  139. Extended attributes are name:value pairs associated with inodes by
  140. the kernel or by users (see the attr(5) manual page, or visit
  141. <http://acl.bestbits.at/> for details).
  142. Currently this enables support for the trusted.* and
  143. security.* namespaces.
  144. You need this for POSIX ACL support on tmpfs.
  145. If unsure, say N.
  146. config HUGETLBFS
  147. bool "HugeTLB file system support"
  148. depends on X86 || IA64 || SPARC64 || (S390 && 64BIT) || \
  149. SYS_SUPPORTS_HUGETLBFS || BROKEN
  150. help
  151. hugetlbfs is a filesystem backing for HugeTLB pages, based on
  152. ramfs. For architectures that support it, say Y here and read
  153. <file:Documentation/vm/hugetlbpage.txt> for details.
  154. If unsure, say N.
  155. config HUGETLB_PAGE
  156. def_bool HUGETLBFS
  157. config ARCH_HAS_GIGANTIC_PAGE
  158. bool
  159. source "fs/configfs/Kconfig"
  160. source "fs/efivarfs/Kconfig"
  161. endmenu
  162. menuconfig MISC_FILESYSTEMS
  163. bool "Miscellaneous filesystems"
  164. default y
  165. ---help---
  166. Say Y here to get to see options for various miscellaneous
  167. filesystems, such as filesystems that came from other
  168. operating systems.
  169. This option alone does not add any kernel code.
  170. If you say N, all options in this submenu will be skipped and
  171. disabled; if unsure, say Y here.
  172. if MISC_FILESYSTEMS
  173. source "fs/orangefs/Kconfig"
  174. source "fs/adfs/Kconfig"
  175. source "fs/affs/Kconfig"
  176. source "fs/ecryptfs/Kconfig"
  177. source "fs/sdcardfs/Kconfig"
  178. source "fs/hfs/Kconfig"
  179. source "fs/hfsplus/Kconfig"
  180. source "fs/befs/Kconfig"
  181. source "fs/bfs/Kconfig"
  182. source "fs/efs/Kconfig"
  183. source "fs/jffs2/Kconfig"
  184. # UBIFS File system configuration
  185. source "fs/ubifs/Kconfig"
  186. source "fs/logfs/Kconfig"
  187. source "fs/cramfs/Kconfig"
  188. source "fs/squashfs/Kconfig"
  189. source "fs/freevxfs/Kconfig"
  190. source "fs/minix/Kconfig"
  191. source "fs/omfs/Kconfig"
  192. source "fs/hpfs/Kconfig"
  193. source "fs/qnx4/Kconfig"
  194. source "fs/qnx6/Kconfig"
  195. source "fs/romfs/Kconfig"
  196. source "fs/pstore/Kconfig"
  197. source "fs/sysv/Kconfig"
  198. source "fs/ufs/Kconfig"
  199. source "fs/exofs/Kconfig"
  200. endif # MISC_FILESYSTEMS
  201. source "fs/exofs/Kconfig.ore"
  202. menuconfig NETWORK_FILESYSTEMS
  203. bool "Network File Systems"
  204. default y
  205. depends on NET
  206. ---help---
  207. Say Y here to get to see options for network filesystems and
  208. filesystem-related networking code, such as NFS daemon and
  209. RPCSEC security modules.
  210. This option alone does not add any kernel code.
  211. If you say N, all options in this submenu will be skipped and
  212. disabled; if unsure, say Y here.
  213. if NETWORK_FILESYSTEMS
  214. source "fs/nfs/Kconfig"
  215. source "fs/nfsd/Kconfig"
  216. config GRACE_PERIOD
  217. tristate
  218. config LOCKD
  219. tristate
  220. depends on FILE_LOCKING
  221. select GRACE_PERIOD
  222. config LOCKD_V4
  223. bool
  224. depends on NFSD_V3 || NFS_V3
  225. depends on FILE_LOCKING
  226. default y
  227. config NFS_ACL_SUPPORT
  228. tristate
  229. select FS_POSIX_ACL
  230. config NFS_COMMON
  231. bool
  232. depends on NFSD || NFS_FS || LOCKD
  233. default y
  234. source "net/sunrpc/Kconfig"
  235. source "fs/ceph/Kconfig"
  236. source "fs/cifs/Kconfig"
  237. source "fs/ncpfs/Kconfig"
  238. source "fs/coda/Kconfig"
  239. source "fs/afs/Kconfig"
  240. source "fs/9p/Kconfig"
  241. endif # NETWORK_FILESYSTEMS
  242. source "fs/nls/Kconfig"
  243. source "fs/dlm/Kconfig"
  244. endmenu