| # SPDX-License-Identifier: GPL-2.0-only | |
| config OVERLAY_FS | |
| tristate "Overlay filesystem support" | |
| select EXPORTFS | |
| help | |
| An overlay filesystem combines two filesystems - an 'upper' filesystem | |
| and a 'lower' filesystem. When a name exists in both filesystems, the | |
| object in the 'upper' filesystem is visible while the object in the | |
| 'lower' filesystem is either hidden or, in the case of directories, | |
| merged with the 'upper' object. | |
| For more information see Documentation/filesystems/overlayfs.txt | |
| config OVERLAY_FS_REDIRECT_DIR | |
| bool "Overlayfs: turn on redirect directory feature by default" | |
| depends on OVERLAY_FS | |
| help | |
| If this config option is enabled then overlay filesystems will use | |
| redirects when renaming directories by default. In this case it is | |
| still possible to turn off redirects globally with the | |
| "redirect_dir=off" module option or on a filesystem instance basis | |
| with the "redirect_dir=off" mount option. | |
| Note, that redirects are not backward compatible. That is, mounting | |
| an overlay which has redirects on a kernel that doesn't support this | |
| feature will have unexpected results. | |
| If unsure, say N. | |
| config OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW | |
| bool "Overlayfs: follow redirects even if redirects are turned off" | |
| default y | |
| depends on OVERLAY_FS | |
| help | |
| Disable this to get a possibly more secure configuration, but that | |
| might not be backward compatible with previous kernels. | |
| If backward compatibility is not an issue, then it is safe and | |
| recommended to say N here. | |
| For more information, see Documentation/filesystems/overlayfs.txt | |
| If unsure, say Y. | |
| config OVERLAY_FS_INDEX | |
| bool "Overlayfs: turn on inodes index feature by default" | |
| depends on OVERLAY_FS | |
| help | |
| If this config option is enabled then overlay filesystems will use | |
| the index directory to map lower inodes to upper inodes by default. | |
| In this case it is still possible to turn off index globally with the | |
| "index=off" module option or on a filesystem instance basis with the | |
| "index=off" mount option. | |
| The inodes index feature prevents breaking of lower hardlinks on copy | |
| up. | |
| Note, that the inodes index feature is not backward compatible. | |
| That is, mounting an overlay which has an inodes index on a kernel | |
| that doesn't support this feature will have unexpected results. | |
| If unsure, say N. | |
| config OVERLAY_FS_NFS_EXPORT | |
| bool "Overlayfs: turn on NFS export feature by default" | |
| depends on OVERLAY_FS | |
| depends on OVERLAY_FS_INDEX | |
| depends on !OVERLAY_FS_METACOPY | |
| help | |
| If this config option is enabled then overlay filesystems will use | |
| the index directory to decode overlay NFS file handles by default. | |
| In this case, it is still possible to turn off NFS export support | |
| globally with the "nfs_export=off" module option or on a filesystem | |
| instance basis with the "nfs_export=off" mount option. | |
| The NFS export feature creates an index on copy up of every file and | |
| directory. This full index is used to detect overlay filesystems | |
| inconsistencies on lookup, like redirect from multiple upper dirs to | |
| the same lower dir. The full index may incur some overhead on mount | |
| time, especially when verifying that directory file handles are not | |
| stale. | |
| Note, that the NFS export feature is not backward compatible. | |
| That is, mounting an overlay which has a full index on a kernel | |
| that doesn't support this feature will have unexpected results. | |
| Most users should say N here and enable this feature on a case-by- | |
| case basis with the "nfs_export=on" mount option. | |
| Say N unless you fully understand the consequences. | |
| config OVERLAY_FS_XINO_AUTO | |
| bool "Overlayfs: auto enable inode number mapping" | |
| default n | |
| depends on OVERLAY_FS | |
| help | |
| If this config option is enabled then overlay filesystems will use | |
| unused high bits in undelying filesystem inode numbers to map all | |
| inodes to a unified address space. The mapped 64bit inode numbers | |
| might not be compatible with applications that expect 32bit inodes. | |
| If compatibility with applications that expect 32bit inodes is not an | |
| issue, then it is safe and recommended to say Y here. | |
| For more information, see Documentation/filesystems/overlayfs.txt | |
| If unsure, say N. | |
| config OVERLAY_FS_METACOPY | |
| bool "Overlayfs: turn on metadata only copy up feature by default" | |
| depends on OVERLAY_FS | |
| select OVERLAY_FS_REDIRECT_DIR | |
| help | |
| If this config option is enabled then overlay filesystems will | |
| copy up only metadata where appropriate and data copy up will | |
| happen when a file is opened for WRITE operation. It is still | |
| possible to turn off this feature globally with the "metacopy=off" | |
| module option or on a filesystem instance basis with the | |
| "metacopy=off" mount option. | |
| Note, that this feature is not backward compatible. That is, | |
| mounting an overlay which has metacopy only inodes on a kernel | |
| that doesn't support this feature will have unexpected results. | |
| If unsure, say N. |