1# SPDX-License-Identifier: GPL-2.0-only 2config OVERLAY_FS 3 tristate "Overlay filesystem support" 4 select EXPORTFS 5 help 6 An overlay filesystem combines two filesystems - an 'upper' filesystem 7 and a 'lower' filesystem. When a name exists in both filesystems, the 8 object in the 'upper' filesystem is visible while the object in the 9 'lower' filesystem is either hidden or, in the case of directories, 10 merged with the 'upper' object. 11 12 For more information see Documentation/filesystems/overlayfs.rst 13 14config OVERLAY_FS_REDIRECT_DIR 15 bool "Overlayfs: turn on redirect directory feature by default" 16 depends on OVERLAY_FS 17 help 18 If this config option is enabled then overlay filesystems will use 19 redirects when renaming directories by default. In this case it is 20 still possible to turn off redirects globally with the 21 "redirect_dir=off" module option or on a filesystem instance basis 22 with the "redirect_dir=off" mount option. 23 24 Note, that redirects are not backward compatible. That is, mounting 25 an overlay which has redirects on a kernel that doesn't support this 26 feature will have unexpected results. 27 28 If unsure, say N. 29 30config OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW 31 bool "Overlayfs: follow redirects even if redirects are turned off" 32 default y 33 depends on OVERLAY_FS 34 help 35 Disable this to get a possibly more secure configuration, but that 36 might not be backward compatible with previous kernels. 37 38 If backward compatibility is not an issue, then it is safe and 39 recommended to say N here. 40 41 For more information, see Documentation/filesystems/overlayfs.rst 42 43 If unsure, say Y. 44 45config OVERLAY_FS_INDEX 46 bool "Overlayfs: turn on inodes index feature by default" 47 depends on OVERLAY_FS 48 help 49 If this config option is enabled then overlay filesystems will use 50 the index directory to map lower inodes to upper inodes by default. 51 In this case it is still possible to turn off index globally with the 52 "index=off" module option or on a filesystem instance basis with the 53 "index=off" mount option. 54 55 The inodes index feature prevents breaking of lower hardlinks on copy 56 up. 57 58 Note, that the inodes index feature is not backward compatible. 59 That is, mounting an overlay which has an inodes index on a kernel 60 that doesn't support this feature will have unexpected results. 61 62 If unsure, say N. 63 64config OVERLAY_FS_NFS_EXPORT 65 bool "Overlayfs: turn on NFS export feature by default" 66 depends on OVERLAY_FS 67 depends on OVERLAY_FS_INDEX 68 depends on !OVERLAY_FS_METACOPY 69 help 70 If this config option is enabled then overlay filesystems will use 71 the index directory to decode overlay NFS file handles by default. 72 In this case, it is still possible to turn off NFS export support 73 globally with the "nfs_export=off" module option or on a filesystem 74 instance basis with the "nfs_export=off" mount option. 75 76 The NFS export feature creates an index on copy up of every file and 77 directory. This full index is used to detect overlay filesystems 78 inconsistencies on lookup, like redirect from multiple upper dirs to 79 the same lower dir. The full index may incur some overhead on mount 80 time, especially when verifying that directory file handles are not 81 stale. 82 83 Note, that the NFS export feature is not backward compatible. 84 That is, mounting an overlay which has a full index on a kernel 85 that doesn't support this feature will have unexpected results. 86 87 Most users should say N here and enable this feature on a case-by- 88 case basis with the "nfs_export=on" mount option. 89 90 Say N unless you fully understand the consequences. 91 92config OVERLAY_FS_XINO_AUTO 93 bool "Overlayfs: auto enable inode number mapping" 94 default n 95 depends on OVERLAY_FS 96 depends on 64BIT 97 help 98 If this config option is enabled then overlay filesystems will use 99 unused high bits in underlying filesystem inode numbers to map all 100 inodes to a unified address space. The mapped 64bit inode numbers 101 might not be compatible with applications that expect 32bit inodes. 102 103 If compatibility with applications that expect 32bit inodes is not an 104 issue, then it is safe and recommended to say Y here. 105 106 For more information, see Documentation/filesystems/overlayfs.rst 107 108 If unsure, say N. 109 110config OVERLAY_FS_METACOPY 111 bool "Overlayfs: turn on metadata only copy up feature by default" 112 depends on OVERLAY_FS 113 select OVERLAY_FS_REDIRECT_DIR 114 help 115 If this config option is enabled then overlay filesystems will 116 copy up only metadata where appropriate and data copy up will 117 happen when a file is opened for WRITE operation. It is still 118 possible to turn off this feature globally with the "metacopy=off" 119 module option or on a filesystem instance basis with the 120 "metacopy=off" mount option. 121 122 Note, that this feature is not backward compatible. That is, 123 mounting an overlay which has metacopy only inodes on a kernel 124 that doesn't support this feature will have unexpected results. 125 126 If unsure, say N. 127 128config OVERLAY_FS_DEBUG 129 bool "Overlayfs: turn on extra debugging checks" 130 default n 131 depends on OVERLAY_FS 132 help 133 Say Y here to enable extra debugging checks in overlayfs. 134 135 If unsure, say N. 136