Merge tag '5.15-rc-cifs-part2' of git://git.samba.org/sfrench/cifs-2.6
[linux-2.6-microblaze.git] / fs / Kconfig
index 141a856..a6313a9 100644 (file)
@@ -43,7 +43,7 @@ source "fs/f2fs/Kconfig"
 source "fs/zonefs/Kconfig"
 
 config FS_DAX
-       bool "Direct Access (DAX) support"
+       bool "File system based Direct Access (DAX) support"
        depends on MMU
        depends on !(ARM || MIPS || SPARC)
        select DEV_PAGEMAP_OPS if (ZONE_DEVICE && !FS_DAX_LIMITED)
@@ -53,8 +53,23 @@ config FS_DAX
          Direct Access (DAX) can be used on memory-backed block devices.
          If the block device supports DAX and the filesystem supports DAX,
          then you can avoid using the pagecache to buffer I/Os.  Turning
-         on this option will compile in support for DAX; you will need to
-         mount the filesystem using the -o dax option.
+         on this option will compile in support for DAX.
+
+         For a DAX device to support file system access it needs to have
+         struct pages.  For the nfit based NVDIMMs this can be enabled
+         using the ndctl utility:
+
+               # ndctl create-namespace --force --reconfig=namespace0.0 \
+                       --mode=fsdax --map=mem
+
+         See the 'create-namespace' man page for details on the overhead of
+         --map=mem:
+         https://docs.pmem.io/ndctl-user-guide/ndctl-man-pages/ndctl-create-namespace
+
+          For ndctl to work CONFIG_DEV_DAX needs to be enabled as well. For most
+         file systems DAX support needs to be manually enabled globally or
+         per-inode using a mount option as well.  See the file documentation in
+         Documentation/filesystems/dax.rst for details.
 
          If you do not have a block device that is capable of using this,
          or if unsure, say N.  Saying Y will increase the size of the kernel
@@ -101,16 +116,6 @@ config FILE_LOCKING
           for filesystems like NFS and for the flock() system
           call. Disabling this option saves about 11k.
 
-config MANDATORY_FILE_LOCKING
-       bool "Enable Mandatory file locking"
-       depends on FILE_LOCKING
-       default y
-       help
-         This option enables files appropriately marked files on appropriely
-         mounted filesystems to support mandatory locking.
-
-         To the best of my knowledge this is dead code that no one cares about.
-
 source "fs/crypto/Kconfig"
 
 source "fs/verity/Kconfig"
@@ -146,6 +151,7 @@ menu "DOS/FAT/EXFAT/NT Filesystems"
 source "fs/fat/Kconfig"
 source "fs/exfat/Kconfig"
 source "fs/ntfs/Kconfig"
+source "fs/ntfs3/Kconfig"
 
 endmenu
 endif # BLOCK
@@ -228,8 +234,7 @@ config ARCH_SUPPORTS_HUGETLBFS
 
 config HUGETLBFS
        bool "HugeTLB file system support"
-       depends on X86 || IA64 || SPARC64 || (S390 && 64BIT) || \
-                  ARCH_SUPPORTS_HUGETLBFS || BROKEN
+       depends on X86 || IA64 || SPARC64 || ARCH_SUPPORTS_HUGETLBFS || BROKEN
        help
          hugetlbfs is a filesystem backing for HugeTLB pages, based on
          ramfs. For architectures that support it, say Y here and read
@@ -240,6 +245,21 @@ config HUGETLBFS
 config HUGETLB_PAGE
        def_bool HUGETLBFS
 
+config HUGETLB_PAGE_FREE_VMEMMAP
+       def_bool HUGETLB_PAGE
+       depends on X86_64
+       depends on SPARSEMEM_VMEMMAP
+
+config HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON
+       bool "Default freeing vmemmap pages of HugeTLB to on"
+       default n
+       depends on HUGETLB_PAGE_FREE_VMEMMAP
+       help
+         When using HUGETLB_PAGE_FREE_VMEMMAP, the freeing unused vmemmap
+         pages associated with each HugeTLB page is default off. Say Y here
+         to enable freeing vmemmap pages of HugeTLB by default. It can then
+         be disabled on the command line via hugetlb_free_vmemmap=off.
+
 config MEMFD_CREATE
        def_bool TMPFS || HUGETLBFS
 
@@ -343,7 +363,15 @@ config NFS_V4_2_SSC_HELPER
 
 source "net/sunrpc/Kconfig"
 source "fs/ceph/Kconfig"
+
 source "fs/cifs/Kconfig"
+source "fs/ksmbd/Kconfig"
+
+config SMBFS_COMMON
+       tristate
+       default y if CIFS=y
+       default m if CIFS=m
+
 source "fs/coda/Kconfig"
 source "fs/afs/Kconfig"
 source "fs/9p/Kconfig"