GNU Linux-libre 5.19-rc6-gnu
[releases.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
13 void  mount_block_root(char *name, int flags);
14 void  mount_root(void);
15 extern int root_mountflags;
16
17 static inline __init int create_dev(char *name, dev_t dev)
18 {
19         init_unlink(name);
20         return init_mknod(name, S_IFBLK | 0600, new_encode_dev(dev));
21 }
22
23 #ifdef CONFIG_BLK_DEV_RAM
24
25 int __init rd_load_disk(int n);
26 int __init rd_load_image(char *from);
27
28 #else
29
30 static inline int rd_load_disk(int n) { return 0; }
31 static inline int rd_load_image(char *from) { return 0; }
32
33 #endif
34
35 #ifdef CONFIG_BLK_DEV_INITRD
36
37 bool __init initrd_load(void);
38
39 #else
40
41 static inline bool initrd_load(void) { return false; }
42
43 #endif