xref: /openbmc/linux/fs/overlayfs/Kconfig (revision d5791044)
1ef94b186SMiklos Szerediconfig OVERLAY_FS
2e9be9d5eSMiklos Szeredi	tristate "Overlay filesystem support"
372d42504SArnd Bergmann	select EXPORTFS
4e9be9d5eSMiklos Szeredi	help
5e9be9d5eSMiklos Szeredi	  An overlay filesystem combines two filesystems - an 'upper' filesystem
6e9be9d5eSMiklos Szeredi	  and a 'lower' filesystem.  When a name exists in both filesystems, the
7e9be9d5eSMiklos Szeredi	  object in the 'upper' filesystem is visible while the object in the
8e9be9d5eSMiklos Szeredi	  'lower' filesystem is either hidden or, in the case of directories,
9e9be9d5eSMiklos Szeredi	  merged with the 'upper' object.
10e9be9d5eSMiklos Szeredi
11e9be9d5eSMiklos Szeredi	  For more information see Documentation/filesystems/overlayfs.txt
12688ea0e5SMiklos Szeredi
13688ea0e5SMiklos Szerediconfig OVERLAY_FS_REDIRECT_DIR
144280f74aSMiklos Szeredi	bool "Overlayfs: turn on redirect directory feature by default"
15688ea0e5SMiklos Szeredi	depends on OVERLAY_FS
16688ea0e5SMiklos Szeredi	help
17688ea0e5SMiklos Szeredi	  If this config option is enabled then overlay filesystems will use
18688ea0e5SMiklos Szeredi	  redirects when renaming directories by default.  In this case it is
19688ea0e5SMiklos Szeredi	  still possible to turn off redirects globally with the
20688ea0e5SMiklos Szeredi	  "redirect_dir=off" module option or on a filesystem instance basis
21688ea0e5SMiklos Szeredi	  with the "redirect_dir=off" mount option.
22688ea0e5SMiklos Szeredi
23688ea0e5SMiklos Szeredi	  Note, that redirects are not backward compatible.  That is, mounting
24688ea0e5SMiklos Szeredi	  an overlay which has redirects on a kernel that doesn't support this
25688ea0e5SMiklos Szeredi	  feature will have unexpected results.
2602bcd157SAmir Goldstein
2736cd95dfSMiklos Szeredi	  If unsure, say N.
2836cd95dfSMiklos Szeredi
29438c84c2SMiklos Szerediconfig OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW
30438c84c2SMiklos Szeredi	bool "Overlayfs: follow redirects even if redirects are turned off"
31438c84c2SMiklos Szeredi	default y
32438c84c2SMiklos Szeredi	depends on OVERLAY_FS
33438c84c2SMiklos Szeredi	help
34438c84c2SMiklos Szeredi	  Disable this to get a possibly more secure configuration, but that
35438c84c2SMiklos Szeredi	  might not be backward compatible with previous kernels.
36438c84c2SMiklos Szeredi
3736cd95dfSMiklos Szeredi	  If backward compatibility is not an issue, then it is safe and
3836cd95dfSMiklos Szeredi	  recommended to say N here.
3936cd95dfSMiklos Szeredi
40438c84c2SMiklos Szeredi	  For more information, see Documentation/filesystems/overlayfs.txt
41438c84c2SMiklos Szeredi
4236cd95dfSMiklos Szeredi	  If unsure, say Y.
4336cd95dfSMiklos Szeredi
4402bcd157SAmir Goldsteinconfig OVERLAY_FS_INDEX
4502bcd157SAmir Goldstein	bool "Overlayfs: turn on inodes index feature by default"
4602bcd157SAmir Goldstein	depends on OVERLAY_FS
4702bcd157SAmir Goldstein	help
4802bcd157SAmir Goldstein	  If this config option is enabled then overlay filesystems will use
494280f74aSMiklos Szeredi	  the index directory to map lower inodes to upper inodes by default.
5002bcd157SAmir Goldstein	  In this case it is still possible to turn off index globally with the
5102bcd157SAmir Goldstein	  "index=off" module option or on a filesystem instance basis with the
5202bcd157SAmir Goldstein	  "index=off" mount option.
5302bcd157SAmir Goldstein
5402bcd157SAmir Goldstein	  The inodes index feature prevents breaking of lower hardlinks on copy
5502bcd157SAmir Goldstein	  up.
5602bcd157SAmir Goldstein
5760b86642SAmir Goldstein	  Note, that the inodes index feature is not backward compatible.
5860b86642SAmir Goldstein	  That is, mounting an overlay which has an inodes index on a kernel
5960b86642SAmir Goldstein	  that doesn't support this feature will have unexpected results.
60f168f109SAmir Goldstein
6136cd95dfSMiklos Szeredi	  If unsure, say N.
6236cd95dfSMiklos Szeredi
63f168f109SAmir Goldsteinconfig OVERLAY_FS_NFS_EXPORT
64f168f109SAmir Goldstein	bool "Overlayfs: turn on NFS export feature by default"
65f168f109SAmir Goldstein	depends on OVERLAY_FS
66f168f109SAmir Goldstein	depends on OVERLAY_FS_INDEX
67d5791044SVivek Goyal	depends on !OVERLAY_FS_METACOPY
68f168f109SAmir Goldstein	help
69f168f109SAmir Goldstein	  If this config option is enabled then overlay filesystems will use
704280f74aSMiklos Szeredi	  the index directory to decode overlay NFS file handles by default.
71f168f109SAmir Goldstein	  In this case, it is still possible to turn off NFS export support
72f168f109SAmir Goldstein	  globally with the "nfs_export=off" module option or on a filesystem
73f168f109SAmir Goldstein	  instance basis with the "nfs_export=off" mount option.
74f168f109SAmir Goldstein
75f168f109SAmir Goldstein	  The NFS export feature creates an index on copy up of every file and
76f168f109SAmir Goldstein	  directory.  This full index is used to detect overlay filesystems
77f168f109SAmir Goldstein	  inconsistencies on lookup, like redirect from multiple upper dirs to
78f168f109SAmir Goldstein	  the same lower dir.  The full index may incur some overhead on mount
79f168f109SAmir Goldstein	  time, especially when verifying that directory file handles are not
80f168f109SAmir Goldstein	  stale.
81f168f109SAmir Goldstein
82f168f109SAmir Goldstein	  Note, that the NFS export feature is not backward compatible.
83f168f109SAmir Goldstein	  That is, mounting an overlay which has a full index on a kernel
84f168f109SAmir Goldstein	  that doesn't support this feature will have unexpected results.
8536cd95dfSMiklos Szeredi
8636cd95dfSMiklos Szeredi	  Most users should say N here and enable this feature on a case-by-
8736cd95dfSMiklos Szeredi	  case basis with the "nfs_export=on" mount option.
8836cd95dfSMiklos Szeredi
8936cd95dfSMiklos Szeredi	  Say N unless you fully understand the consequences.
90795939a9SAmir Goldstein
91795939a9SAmir Goldsteinconfig OVERLAY_FS_XINO_AUTO
92795939a9SAmir Goldstein	bool "Overlayfs: auto enable inode number mapping"
93795939a9SAmir Goldstein	default n
94795939a9SAmir Goldstein	depends on OVERLAY_FS
95795939a9SAmir Goldstein	help
96795939a9SAmir Goldstein	  If this config option is enabled then overlay filesystems will use
97795939a9SAmir Goldstein	  unused high bits in undelying filesystem inode numbers to map all
98795939a9SAmir Goldstein	  inodes to a unified address space.  The mapped 64bit inode numbers
99795939a9SAmir Goldstein	  might not be compatible with applications that expect 32bit inodes.
100795939a9SAmir Goldstein
101795939a9SAmir Goldstein	  If compatibility with applications that expect 32bit inodes is not an
102795939a9SAmir Goldstein	  issue, then it is safe and recommended to say Y here.
103795939a9SAmir Goldstein
104795939a9SAmir Goldstein	  For more information, see Documentation/filesystems/overlayfs.txt
105795939a9SAmir Goldstein
106795939a9SAmir Goldstein	  If unsure, say N.
107d5791044SVivek Goyal
108d5791044SVivek Goyalconfig OVERLAY_FS_METACOPY
109d5791044SVivek Goyal	bool "Overlayfs: turn on metadata only copy up feature by default"
110d5791044SVivek Goyal	depends on OVERLAY_FS
111d5791044SVivek Goyal	select OVERLAY_FS_REDIRECT_DIR
112d5791044SVivek Goyal	help
113d5791044SVivek Goyal	  If this config option is enabled then overlay filesystems will
114d5791044SVivek Goyal	  copy up only metadata where appropriate and data copy up will
115d5791044SVivek Goyal	  happen when a file is opened for WRITE operation. It is still
116d5791044SVivek Goyal	  possible to turn off this feature globally with the "metacopy=off"
117d5791044SVivek Goyal	  module option or on a filesystem instance basis with the
118d5791044SVivek Goyal	  "metacopy=off" mount option.
119d5791044SVivek Goyal
120d5791044SVivek Goyal	  Note, that this feature is not backward compatible.  That is,
121d5791044SVivek Goyal	  mounting an overlay which has metacopy only inodes on a kernel
122d5791044SVivek Goyal	  that doesn't support this feature will have unexpected results.
123d5791044SVivek Goyal
124d5791044SVivek Goyal	  If unsure, say N.
125