diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-06-11 11:22:34 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-06-11 11:22:34 -0400 |
commit | a2225d931f75ddd3c39f4d0d195fad99dfd68671 (patch) | |
tree | 5b9333556f2fb3f10ea1864f095d8e2f86ddf373 | |
parent | 0f105cf4f60e5afdf2932fed7f05ce776ce14289 (diff) |
autofs: remove left-over autofs4 stubs
There's no need to retain the fs/autofs4 directory for backward
compatibility.
Adding an AUTOFS4_FS fragment to the autofs Kconfig and a module alias
for autofs4 is sufficient for almost all cases. Not keeping fs/autofs4
remnants will prevent "insmod <path>/autofs4/autofs4.ko" from working
but this shouldn't be used in automation scripts rather than
modprobe(8).
There were some comments about things to look out for with the module
rename in the fs/autofs4/Kconfig that is removed by this patch, see the
commit patch if you are interested.
One potential problem with this change is that when the
fs/autofs/Kconfig fragment for AUTOFS4_FS is removed any AUTOFS4_FS
entries will be removed from the kernel config, resulting in no autofs
file system being built if there is no AUTOFS_FS entry also.
This would have also happened if the fs/autofs4 remnants had remained
and is most likely to be a problem with automated builds.
Please check your build configurations before the removal which will
occur after the next couple of kernel releases.
Acked-by: Ian Kent <raven@themaw.net>
[ With edits and commit message from Ian Kent ]
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | fs/Kconfig | 1 | ||||
-rw-r--r-- | fs/Makefile | 1 | ||||
-rw-r--r-- | fs/autofs/Kconfig | 11 | ||||
-rw-r--r-- | fs/autofs/init.c | 1 | ||||
-rw-r--r-- | fs/autofs4/Kconfig | 46 | ||||
-rw-r--r-- | fs/autofs4/Makefile | 9 |
6 files changed, 12 insertions, 57 deletions
diff --git a/fs/Kconfig b/fs/Kconfig index ab2d96d1abee..ac474a61be37 100644 --- a/fs/Kconfig +++ b/fs/Kconfig | |||
@@ -110,7 +110,6 @@ source "fs/notify/Kconfig" | |||
110 | source "fs/quota/Kconfig" | 110 | source "fs/quota/Kconfig" |
111 | 111 | ||
112 | source "fs/autofs/Kconfig" | 112 | source "fs/autofs/Kconfig" |
113 | source "fs/autofs4/Kconfig" | ||
114 | source "fs/fuse/Kconfig" | 113 | source "fs/fuse/Kconfig" |
115 | source "fs/overlayfs/Kconfig" | 114 | source "fs/overlayfs/Kconfig" |
116 | 115 | ||
diff --git a/fs/Makefile b/fs/Makefile index 2e005525cc19..293733f61594 100644 --- a/fs/Makefile +++ b/fs/Makefile | |||
@@ -103,7 +103,6 @@ obj-$(CONFIG_ROMFS_FS) += romfs/ | |||
103 | obj-$(CONFIG_QNX4FS_FS) += qnx4/ | 103 | obj-$(CONFIG_QNX4FS_FS) += qnx4/ |
104 | obj-$(CONFIG_QNX6FS_FS) += qnx6/ | 104 | obj-$(CONFIG_QNX6FS_FS) += qnx6/ |
105 | obj-$(CONFIG_AUTOFS_FS) += autofs/ | 105 | obj-$(CONFIG_AUTOFS_FS) += autofs/ |
106 | obj-$(CONFIG_AUTOFS4_FS) += autofs4/ | ||
107 | obj-$(CONFIG_ADFS_FS) += adfs/ | 106 | obj-$(CONFIG_ADFS_FS) += adfs/ |
108 | obj-$(CONFIG_FUSE_FS) += fuse/ | 107 | obj-$(CONFIG_FUSE_FS) += fuse/ |
109 | obj-$(CONFIG_OVERLAY_FS) += overlayfs/ | 108 | obj-$(CONFIG_OVERLAY_FS) += overlayfs/ |
diff --git a/fs/autofs/Kconfig b/fs/autofs/Kconfig index 6a2064eb3b27..55c3930a907b 100644 --- a/fs/autofs/Kconfig +++ b/fs/autofs/Kconfig | |||
@@ -1,3 +1,14 @@ | |||
1 | config AUTOFS4_FS | ||
2 | tristate "Old Kconfig name for Kernel automounter support" | ||
3 | select AUTOFS_FS | ||
4 | help | ||
5 | This name exists for people to just automatically pick up the | ||
6 | new name of the autofs Kconfig option. All it does is select | ||
7 | thenew new option name. | ||
8 | |||
9 | It will go away in a release or two as people have | ||
10 | transitioned to just plain AUTOFS_FS. | ||
11 | |||
1 | config AUTOFS_FS | 12 | config AUTOFS_FS |
2 | tristate "Kernel automounter support (supports v3, v4 and v5)" | 13 | tristate "Kernel automounter support (supports v3, v4 and v5)" |
3 | default n | 14 | default n |
diff --git a/fs/autofs/init.c b/fs/autofs/init.c index 16fb61315843..cc9447e1903f 100644 --- a/fs/autofs/init.c +++ b/fs/autofs/init.c | |||
@@ -23,6 +23,7 @@ static struct file_system_type autofs_fs_type = { | |||
23 | .kill_sb = autofs_kill_sb, | 23 | .kill_sb = autofs_kill_sb, |
24 | }; | 24 | }; |
25 | MODULE_ALIAS_FS("autofs"); | 25 | MODULE_ALIAS_FS("autofs"); |
26 | MODULE_ALIAS("autofs4"); | ||
26 | 27 | ||
27 | static int __init init_autofs_fs(void) | 28 | static int __init init_autofs_fs(void) |
28 | { | 29 | { |
diff --git a/fs/autofs4/Kconfig b/fs/autofs4/Kconfig deleted file mode 100644 index 99fda4d6da25..000000000000 --- a/fs/autofs4/Kconfig +++ /dev/null | |||
@@ -1,46 +0,0 @@ | |||
1 | config AUTOFS4_FS | ||
2 | tristate "Kernel automounter version 4 support (also supports v3 and v5)" | ||
3 | default n | ||
4 | depends on AUTOFS_FS = n | ||
5 | help | ||
6 | The automounter is a tool to automatically mount remote file systems | ||
7 | on demand. This implementation is partially kernel-based to reduce | ||
8 | overhead in the already-mounted case; this is unlike the BSD | ||
9 | automounter (amd), which is a pure user space daemon. | ||
10 | |||
11 | To use the automounter you need the user-space tools from | ||
12 | <https://www.kernel.org/pub/linux/daemons/autofs/>; you also want | ||
13 | to answer Y to "NFS file system support", below. | ||
14 | |||
15 | This module is in the process of being renamed from autofs4 to | ||
16 | autofs. Since autofs is now the only module that provides the | ||
17 | autofs file system the module is not version 4 specific. | ||
18 | |||
19 | The autofs4 module is now built from the source located in | ||
20 | fs/autofs. The autofs4 directory and its configuration entry | ||
21 | will be removed two kernel versions from the inclusion of this | ||
22 | change. | ||
23 | |||
24 | Changes that will need to be made should be limited to: | ||
25 | - source include statments should be changed from autofs_fs4.h to | ||
26 | autofs_fs.h since these two header files have been merged. | ||
27 | - user space scripts that manually load autofs4.ko should be | ||
28 | changed to load autofs.ko. But since the module directory name | ||
29 | and the module name are the same as the file system name there | ||
30 | is no need to manually load module. | ||
31 | - any "alias autofs autofs4" will need to be removed. | ||
32 | - due to the autofs4 module directory name not being the same as | ||
33 | its file system name autoloading didn't work properly. Because | ||
34 | of this kernel configurations would often build the module into | ||
35 | the kernel. This may have resulted in selinux policies that will | ||
36 | prevent the autofs module from autoloading and will need to be | ||
37 | updated. | ||
38 | |||
39 | Please configure AUTOFS_FS instead of AUTOFS4_FS from now on. | ||
40 | |||
41 | NOTE: Since the modules autofs and autofs4 use the same file system | ||
42 | type name of "autofs" only one can be built. The "depends" | ||
43 | above will result in AUTOFS4_FS not appearing in .config for | ||
44 | any setting of AUTOFS_FS other than n and AUTOFS4_FS will | ||
45 | appear under the AUTOFS_FS entry otherwise which is intended | ||
46 | to draw attention to the module rename change. | ||
diff --git a/fs/autofs4/Makefile b/fs/autofs4/Makefile deleted file mode 100644 index 417dd726d9ef..000000000000 --- a/fs/autofs4/Makefile +++ /dev/null | |||
@@ -1,9 +0,0 @@ | |||
1 | # | ||
2 | # Makefile for the linux autofs-filesystem routines. | ||
3 | # | ||
4 | |||
5 | obj-$(CONFIG_AUTOFS4_FS) += autofs4.o | ||
6 | |||
7 | autofs4-objs := ../autofs/init.o ../autofs/inode.o ../autofs/root.o \ | ||
8 | ../autofs/symlink.o ../autofs/waitq.o ../autofs/expire.o \ | ||
9 | ../autofs/dev-ioctl.o | ||