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_INDEX_NOUUID
	bool "Overlayfs: relax uuid checks of inodes index feature"
	depends on OVERLAY_FS
	depends on OVERLAY_FS_INDEX
	help
	  If this config option is enabled then overlay will skip uuid checks
	  for index lower to upper inode map, this only can be done if all
	  upper and lower directories are on the same filesystem where basic
	  fhandles are uniq.

	  It is needed to overcome possible change of uuid on superblock of the
	  backing filesystem, e.g. when you copied the virtual disk and mount
	  both the copy of the disk and the original one at the same time.

	  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
	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_DYNAMIC_RESOLVE_PATH_OPTIONS
	bool "Overlayfs: all mount paths options resolved dynamically on options show"
	default y
	depends on OVERLAY_FS
	help
	  This option helps checkpoint/restore of overlayfs mounts.
	  If N selected, old behavior is saved. In this case lowerdir,
	  upperdir, workdir options shows in /proc/fd/mountinfo, /proc/mounts
	  as it given by user on mount. User may specify relative paths in
	  these options, then we couldn't determine from options which full
	  paths correspond these relative paths. Also, after pivot_root syscall
	  these paths (even full) will not rebuild according to root change.

	  If this config option is enabled then overlay filesystems lowerdir,
	  upperdir, workdir options paths will dynamically recalculated as full
	  paths in corresponding mount namespaces by default.

	  It's also possible to change this behavior on overlayfs module
	  loading or through sysfs (dyn_path_opts parameter).

	  Disable this to get a backward compatible with previous kernels
	  configuration, but in this case checkpoint/restore functionality for
	  overlayfs mounts will not work.

	  If backward compatibility 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_PATH_OPTIONS_MNT_ID
	bool "Overlayfs: show mnt_id for all mount paths options"
	default y
	depends on OVERLAY_FS
	help
	  This option helps checkpoint/restore of overlayfs mounts.
	  If N selected, old behavior is saved.

	  If this config option is enabled then in overlay filesystems mount
	  options you will be able to see additional parameters
	  lowerdir_mnt_id/upperdir_mnt_id with corresponding mnt_ids.

	  It's also possible to change this behavior on overlayfs module
	  loading or through sysfs (mnt_id_path_opts parameter).

	  Disable this to get a backward compatible with previous kernels
	  configuration, but in this case checkpoint/restore functionality
	  for overlayfs mounts may not fully work.

	  If backward compatibility 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.
