diff options
| author | Al Viro <viro@zeniv.linux.org.uk> | 2019-05-30 17:48:35 -0400 |
|---|---|---|
| committer | Al Viro <viro@zeniv.linux.org.uk> | 2019-07-04 22:01:59 -0400 |
| commit | fd3e007f6c6a0f677e4ee8aca4b9bab8ad6cab9a (patch) | |
| tree | 88755e938018b0f3b2d66aa86cdbfafd16e99529 /include/linux | |
| parent | 14a253ce4210cd2ef133b392062477e9d656db4a (diff) | |
don't bother with registering rootfs
init_mount_tree() can get to rootfs_fs_type directly and that simplifies
a lot of things. We don't need to register it, we don't need to look
it up *and* we don't need to bother with preventing subsequent userland
mounts. That's the way we should've done that from the very beginning.
There is a user-visible change, namely the disappearance of "rootfs"
from /proc/filesystems. Note that it's been unmountable all along
and it didn't show up in /proc/mounts; however, it *is* a user-visible
change and theoretically some script might've been using its presence
in /proc/filesystems to tell 2.4.11+ from earlier kernels.
*IF* any complaints about behaviour change do show up, we could fake
it in /proc/filesystems. I very much doubt we'll have to, though.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/init.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/init.h b/include/linux/init.h index 5255069f5a9f..cbe93521397e 100644 --- a/include/linux/init.h +++ b/include/linux/init.h | |||
| @@ -137,6 +137,8 @@ extern initcall_entry_t __con_initcall_start[], __con_initcall_end[]; | |||
| 137 | /* Used for contructor calls. */ | 137 | /* Used for contructor calls. */ |
| 138 | typedef void (*ctor_fn_t)(void); | 138 | typedef void (*ctor_fn_t)(void); |
| 139 | 139 | ||
| 140 | struct file_system_type; | ||
| 141 | |||
| 140 | /* Defined in init/main.c */ | 142 | /* Defined in init/main.c */ |
| 141 | extern int do_one_initcall(initcall_t fn); | 143 | extern int do_one_initcall(initcall_t fn); |
| 142 | extern char __initdata boot_command_line[]; | 144 | extern char __initdata boot_command_line[]; |
| @@ -147,6 +149,7 @@ extern unsigned int reset_devices; | |||
| 147 | void setup_arch(char **); | 149 | void setup_arch(char **); |
| 148 | void prepare_namespace(void); | 150 | void prepare_namespace(void); |
| 149 | int __init init_rootfs(void); | 151 | int __init init_rootfs(void); |
| 152 | extern struct file_system_type rootfs_fs_type; | ||
| 150 | 153 | ||
| 151 | #if defined(CONFIG_STRICT_KERNEL_RWX) || defined(CONFIG_STRICT_MODULE_RWX) | 154 | #if defined(CONFIG_STRICT_KERNEL_RWX) || defined(CONFIG_STRICT_MODULE_RWX) |
| 152 | extern bool rodata_enabled; | 155 | extern bool rodata_enabled; |
