linux/init/noinitramfs.c
<<
>>
Prefs
   1// SPDX-License-Identifier: GPL-2.0-only
   2/*
   3 * init/noinitramfs.c
   4 *
   5 * Copyright (C) 2006, NXP Semiconductors, All Rights Reserved
   6 * Author: Jean-Paul Saman <jean-paul.saman@nxp.com>
   7 */
   8#include <linux/init.h>
   9#include <linux/stat.h>
  10#include <linux/kdev_t.h>
  11#include <linux/syscalls.h>
  12
  13/*
  14 * Create a simple rootfs that is similar to the default initramfs
  15 */
  16static int __init default_rootfs(void)
  17{
  18        int err;
  19
  20        err = ksys_mkdir((const char __user __force *) "/dev", 0755);
  21        if (err < 0)
  22                goto out;
  23
  24        err = ksys_mknod((const char __user __force *) "/dev/console",
  25                        S_IFCHR | S_IRUSR | S_IWUSR,
  26                        new_encode_dev(MKDEV(5, 1)));
  27        if (err < 0)
  28                goto out;
  29
  30        err = ksys_mkdir((const char __user __force *) "/root", 0700);
  31        if (err < 0)
  32                goto out;
  33
  34        return 0;
  35
  36out:
  37        printk(KERN_WARNING "Failed to create a rootfs\n");
  38        return err;
  39}
  40rootfs_initcall(default_rootfs);
  41