]> git.ipfire.org Git - thirdparty/linux.git/blob - init/do_mounts.h
Merge tag 'phy-for-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy
[thirdparty/linux.git] / init / do_mounts.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #include <linux/kernel.h>
3 #include <linux/blkdev.h>
4 #include <linux/init.h>
5 #include <linux/syscalls.h>
6 #include <linux/unistd.h>
7 #include <linux/slab.h>
8 #include <linux/mount.h>
9 #include <linux/major.h>
10 #include <linux/root_dev.h>
11 #include <linux/init_syscalls.h>
12 #include <linux/task_work.h>
13 #include <linux/file.h>
14
15 void mount_root_generic(char *name, char *pretty_name, int flags);
16 void mount_root(char *root_device_name);
17 extern int root_mountflags;
18
19 static inline __init int create_dev(char *name, dev_t dev)
20 {
21 init_unlink(name);
22 return init_mknod(name, S_IFBLK | 0600, new_encode_dev(dev));
23 }
24
25 #ifdef CONFIG_BLK_DEV_RAM
26
27 int __init rd_load_disk(int n);
28 int __init rd_load_image(char *from);
29
30 #else
31
32 static inline int rd_load_disk(int n) { return 0; }
33 static inline int rd_load_image(char *from) { return 0; }
34
35 #endif
36
37 #ifdef CONFIG_BLK_DEV_INITRD
38 bool __init initrd_load(char *root_device_name);
39 #else
40 static inline bool initrd_load(char *root_device_name)
41 {
42 return false;
43 }
44
45 #endif
46
47 /* Ensure that async file closing finished to prevent spurious errors. */
48 static inline void init_flush_fput(void)
49 {
50 flush_delayed_fput();
51 task_work_run();
52 }