linux/init/do_mounts.c

// SPDX-License-Identifier: GPL-2.0-only
#include <linux/module.h>
#include <linux/sched.h>
#include <linux/ctype.h>
#include <linux/fd.h>
#include <linux/tty.h>
#include <linux/suspend.h>
#include <linux/root_dev.h>
#include <linux/security.h>
#include <linux/delay.h>
#include <linux/mount.h>
#include <linux/device.h>
#include <linux/init.h>
#include <linux/fs.h>
#include <linux/initrd.h>
#include <linux/async.h>
#include <linux/fs_struct.h>
#include <linux/slab.h>
#include <linux/ramfs.h>
#include <linux/shmem_fs.h>
#include <linux/ktime.h>

#include <linux/nfs_fs.h>
#include <linux/nfs_fs_sb.h>
#include <linux/nfs_mount.h>
#include <linux/raid/detect.h>
#include <uapi/linux/mount.h>

#include "do_mounts.h"

int root_mountflags =;
static char __initdata saved_root_name[64];
static int root_wait;

dev_t ROOT_DEV;

static int __init load_ramdisk(char *str)
{}
__setup();

static int __init readonly(char *str)
{}

static int __init readwrite(char *str)
{}

__setup();
__setup();

static int __init root_dev_setup(char *line)
{}

__setup();

static int __init rootwait_setup(char *str)
{}

__setup();

static int __init rootwait_timeout_setup(char *str)
{}

__setup();

static char * __initdata root_mount_data;
static int __init root_data_setup(char *str)
{}

static char * __initdata root_fs_names;
static int __init fs_names_setup(char *str)
{}

static unsigned int __initdata root_delay;
static int __init root_delay_setup(char *str)
{}

__setup();
__setup();
__setup();

/* This can return zero length strings. Caller should check */
static int __init split_fs_names(char *page, size_t size)
{}

static int __init do_mount_root(const char *name, const char *fs,
				 const int flags, const void *data)
{}

void __init mount_root_generic(char *name, char *pretty_name, int flags)
{}
 
#ifdef CONFIG_ROOT_NFS

#define NFSROOT_TIMEOUT_MIN
#define NFSROOT_TIMEOUT_MAX
#define NFSROOT_RETRY_MAX

static void __init mount_nfs_root(void)
{}
#else
static inline void mount_nfs_root(void)
{
}
#endif /* CONFIG_ROOT_NFS */

#ifdef CONFIG_CIFS_ROOT

#define CIFSROOT_TIMEOUT_MIN
#define CIFSROOT_TIMEOUT_MAX
#define CIFSROOT_RETRY_MAX

static void __init mount_cifs_root(void)
{}
#else
static inline void mount_cifs_root(void)
{
}
#endif /* CONFIG_CIFS_ROOT */

static bool __init fs_is_nodev(char *fstype)
{}

static int __init mount_nodev_root(char *root_device_name)
{}

#ifdef CONFIG_BLOCK
static void __init mount_block_root(char *root_device_name)
{}
#else
static inline void mount_block_root(char *root_device_name)
{
}
#endif /* CONFIG_BLOCK */

void __init mount_root(char *root_device_name)
{}

/* wait for any asynchronous scanning to complete */
static void __init wait_for_root(char *root_device_name)
{}

static dev_t __init parse_root_device(char *root_device_name)
{}

/*
 * Prepare the namespace - decide what/where to mount, load ramdisks, etc.
 */
void __init prepare_namespace(void)
{}

static bool is_tmpfs;
static int rootfs_init_fs_context(struct fs_context *fc)
{}

struct file_system_type rootfs_fs_type =;

void __init init_rootfs(void)
{}