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