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. select FS_IOMAP
  33. select DAX
  34. help
  35. Direct Access (DAX) can be used on memory-backed block devices.
  36. If the block device supports DAX and the filesystem supports DAX,
  37. then you can avoid using the pagecache to buffer I/Os. Turning
  38. on this option will compile in support for DAX; you will need to
  39. mount the filesystem using the -o dax option.
  40. If you do not have a block device that is capable of using this,
  41. or if unsure, say N. Saying Y will increase the size of the kernel
  42. by about 5kB.
  43. config FS_DAX_PMD
  44. bool
  45. default FS_DAX
  46. depends on FS_DAX
  47. depends on ZONE_DEVICE
  48. depends on TRANSPARENT_HUGEPAGE
  49. # Selected by DAX drivers that do not expect filesystem DAX to support
  50. # get_user_pages() of DAX mappings. I.e. "limited" indicates no support
  51. # for fork() of processes with MAP_SHARED mappings or support for
  52. # direct-I/O to a DAX mapping.
  53. config FS_DAX_LIMITED
  54. bool
  55. endif # BLOCK
  56. # Posix ACL utility routines
  57. #
  58. # Note: Posix ACLs can be implemented without these helpers. Never use
  59. # this symbol for ifdefs in core code.
  60. #
  61. config FS_POSIX_ACL
  62. def_bool n
  63. config EXPORTFS
  64. tristate
  65. config EXPORTFS_BLOCK_OPS
  66. bool "Enable filesystem export operations for block IO"
  67. help
  68. This option enables the export operations for a filesystem to support
  69. external block IO.
  70. config FILE_LOCKING
  71. bool "Enable POSIX file locking API" if EXPERT
  72. default y
  73. help
  74. This option enables standard file locking support, required
  75. for filesystems like NFS and for the flock() system
  76. call. Disabling this option saves about 11k.
  77. config MANDATORY_FILE_LOCKING
  78. bool "Enable Mandatory file locking"
  79. depends on FILE_LOCKING
  80. default y
  81. help
  82. This option enables files appropriately marked files on appropriely
  83. mounted filesystems to support mandatory locking.
  84. To the best of my knowledge this is dead code that no one cares about.
  85. source "fs/crypto/Kconfig"
  86. source "fs/notify/Kconfig"
  87. source "fs/quota/Kconfig"
  88. source "fs/autofs4/Kconfig"
  89. source "fs/fuse/Kconfig"
  90. source "fs/overlayfs/Kconfig"
  91. menu "Caches"
  92. source "fs/fscache/Kconfig"
  93. source "fs/cachefiles/Kconfig"
  94. endmenu
  95. if BLOCK
  96. menu "CD-ROM/DVD Filesystems"
  97. source "fs/isofs/Kconfig"
  98. source "fs/udf/Kconfig"
  99. endmenu
  100. endif # BLOCK
  101. if BLOCK
  102. menu "DOS/FAT/NT Filesystems"
  103. source "fs/fat/Kconfig"
  104. source "fs/ntfs/Kconfig"
  105. endmenu
  106. endif # BLOCK
  107. menu "Pseudo filesystems"
  108. source "fs/proc/Kconfig"
  109. source "fs/kernfs/Kconfig"
  110. source "fs/sysfs/Kconfig"
  111. config TMPFS
  112. bool "Tmpfs virtual memory file system support (former shm fs)"
  113. depends on SHMEM
  114. help
  115. Tmpfs is a file system which keeps all files in virtual memory.
  116. Everything in tmpfs is temporary in the sense that no files will be
  117. created on your hard drive. The files live in memory and swap
  118. space. If you unmount a tmpfs instance, everything stored therein is
  119. lost.
  120. See <file:Documentation/filesystems/tmpfs.txt> for details.
  121. config TMPFS_POSIX_ACL
  122. bool "Tmpfs POSIX Access Control Lists"
  123. depends on TMPFS
  124. select TMPFS_XATTR
  125. select FS_POSIX_ACL
  126. help
  127. POSIX Access Control Lists (ACLs) support additional access rights
  128. for users and groups beyond the standard owner/group/world scheme,
  129. and this option selects support for ACLs specifically for tmpfs
  130. filesystems.
  131. If you've selected TMPFS, it's possible that you'll also need
  132. this option as there are a number of Linux distros that require
  133. POSIX ACL support under /dev for certain features to work properly.
  134. For example, some distros need this feature for ALSA-related /dev
  135. files for sound to work properly. In short, if you're not sure,
  136. say Y.
  137. config TMPFS_XATTR
  138. bool "Tmpfs extended attributes"
  139. depends on TMPFS
  140. default n
  141. help
  142. Extended attributes are name:value pairs associated with inodes by
  143. the kernel or by users (see the attr(5) manual page for details).
  144. Currently this enables support for the trusted.* and
  145. security.* namespaces.
  146. You need this for POSIX ACL support on tmpfs.
  147. If unsure, say N.
  148. config HUGETLBFS
  149. bool "HugeTLB file system support"
  150. depends on X86 || IA64 || SPARC64 || (S390 && 64BIT) || \
  151. SYS_SUPPORTS_HUGETLBFS || BROKEN
  152. help
  153. hugetlbfs is a filesystem backing for HugeTLB pages, based on
  154. ramfs. For architectures that support it, say Y here and read
  155. <file:Documentation/vm/hugetlbpage.txt> for details.
  156. If unsure, say N.
  157. config HUGETLB_PAGE
  158. def_bool HUGETLBFS
  159. config ARCH_HAS_GIGANTIC_PAGE
  160. bool
  161. source "fs/configfs/Kconfig"
  162. source "fs/efivarfs/Kconfig"
  163. endmenu
  164. menuconfig MISC_FILESYSTEMS
  165. bool "Miscellaneous filesystems"
  166. default y
  167. ---help---
  168. Say Y here to get to see options for various miscellaneous
  169. filesystems, such as filesystems that came from other
  170. operating systems.
  171. This option alone does not add any kernel code.
  172. If you say N, all options in this submenu will be skipped and
  173. disabled; if unsure, say Y here.
  174. if MISC_FILESYSTEMS
  175. source "fs/orangefs/Kconfig"
  176. source "fs/adfs/Kconfig"
  177. source "fs/affs/Kconfig"
  178. source "fs/ecryptfs/Kconfig"
  179. source "fs/hfs/Kconfig"
  180. source "fs/hfsplus/Kconfig"
  181. source "fs/befs/Kconfig"
  182. source "fs/bfs/Kconfig"
  183. source "fs/efs/Kconfig"
  184. source "fs/jffs2/Kconfig"
  185. # UBIFS File system configuration
  186. source "fs/ubifs/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/coda/Kconfig"
  238. source "fs/afs/Kconfig"
  239. source "fs/9p/Kconfig"
  240. endif # NETWORK_FILESYSTEMS
  241. source "fs/nls/Kconfig"
  242. source "fs/dlm/Kconfig"
  243. endmenu