Linux Audio

Check our new training course

Loading...
 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
15void  mount_root_generic(char *name, char *pretty_name, int flags);
16void  mount_root(char *root_device_name);
17extern int root_mountflags;
18
19static 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
27int __init rd_load_disk(int n);
28int __init rd_load_image(char *from);
29
30#else
31
32static inline int rd_load_disk(int n) { return 0; }
33static inline int rd_load_image(char *from) { return 0; }
34
35#endif
36
37#ifdef CONFIG_BLK_DEV_INITRD
38bool __init initrd_load(char *root_device_name);
39#else
40static 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. */
48static inline void init_flush_fput(void)
49{
50	flush_delayed_fput();
51	task_work_run();
52}
 1#include <linux/kernel.h>
 2#include <linux/blkdev.h>
 3#include <linux/init.h>
 4#include <linux/syscalls.h>
 5#include <linux/unistd.h>
 6#include <linux/slab.h>
 7#include <linux/mount.h>
 8#include <linux/major.h>
 9#include <linux/root_dev.h>
10
11void  change_floppy(char *fmt, ...);
12void  mount_block_root(char *name, int flags);
13void  mount_root(void);
14extern int root_mountflags;
15
16static inline int create_dev(char *name, dev_t dev)
17{
18	sys_unlink(name);
19	return sys_mknod(name, S_IFBLK|0600, new_encode_dev(dev));
20}
21
22#if BITS_PER_LONG == 32
23static inline u32 bstat(char *name)
24{
25	struct stat64 stat;
26	if (sys_stat64(name, &stat) != 0)
27		return 0;
28	if (!S_ISBLK(stat.st_mode))
29		return 0;
30	if (stat.st_rdev != (u32)stat.st_rdev)
31		return 0;
32	return stat.st_rdev;
33}
34#else
35static inline u32 bstat(char *name)
36{
37	struct stat stat;
38	if (sys_newstat(name, &stat) != 0)
39		return 0;
40	if (!S_ISBLK(stat.st_mode))
41		return 0;
42	return stat.st_rdev;
43}
44#endif
45
46#ifdef CONFIG_BLK_DEV_RAM
47
48int __init rd_load_disk(int n);
49int __init rd_load_image(char *from);
50
51#else
52
53static inline int rd_load_disk(int n) { return 0; }
54static inline int rd_load_image(char *from) { return 0; }
55
56#endif
57
58#ifdef CONFIG_BLK_DEV_INITRD
59
60bool __init initrd_load(void);
61
62#else
63
64static inline bool initrd_load(void) { return false; }
65
66#endif
67
68#ifdef CONFIG_BLK_DEV_MD
69
70void md_run_setup(void);
71
72#else
73
74static inline void md_run_setup(void) {}
75
76#endif