config AUTOFS4_FS
	tristate "Kernel automounter version 4 support (also supports v3 and v5)"
	default n
	depends on AUTOFS_FS = n
	help
	  The automounter is a tool to automatically mount remote file systems
	  on demand. This implementation is partially kernel-based to reduce
	  overhead in the already-mounted case; this is unlike the BSD
	  automounter (amd), which is a pure user space daemon.

	  To use the automounter you need the user-space tools from
	  <https://www.kernel.org/pub/linux/daemons/autofs/>; you also want
	  to answer Y to "NFS file system support", below.

	  This module is in the process of being renamed from autofs4 to
	  autofs. Since autofs is now the only module that provides the
	  autofs file system the module is not version 4 specific.

	  The autofs4 module is now built from the source located in
	  fs/autofs. The autofs4 directory and its configuration entry
	  will be removed two kernel versions from the inclusion of this
	  change.

	  Changes that will need to be made should be limited to:
	  - source include statments should be changed from autofs_fs4.h to
	    autofs_fs.h since these two header files have been merged.
	  - user space scripts that manually load autofs4.ko should be
	    changed to load autofs.ko. But since the module directory name
	    and the module name are the same as the file system name there
	    is no need to manually load module.
	  - any "alias autofs autofs4" will need to be removed.
	  - due to the autofs4 module directory name not being the same as
	    its file system name autoloading didn't work properly. Because
	    of this kernel configurations would often build the module into
	    the kernel. This may have resulted in selinux policies that will
	    prevent the autofs module from autoloading and will need to be
	    updated.

	  Please configure AUTOFS_FS instead of AUTOFS4_FS from now on.

	  NOTE: Since the modules autofs and autofs4 use the same file system
		type name of "autofs" only one can be built. The "depends"
		above will result in AUTOFS4_FS not appearing in .config for
		any setting of AUTOFS_FS other than n and AUTOFS4_FS will
		appear under the AUTOFS_FS entry otherwise which is intended
		to draw attention to the module rename change.
