Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
awilliam
GitHub Repository: awilliam/linux-vfio
Path: blob/master/init/noinitramfs.c
10814 views
1
/*
2
* init/noinitramfs.c
3
*
4
* Copyright (C) 2006, NXP Semiconductors, All Rights Reserved
5
* Author: Jean-Paul Saman <[email protected]>
6
*
7
* This program is free software; you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation; version 2 of the License.
10
*
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License
17
* along with this program; if not, write to the Free Software
18
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19
*/
20
#include <linux/init.h>
21
#include <linux/stat.h>
22
#include <linux/kdev_t.h>
23
#include <linux/syscalls.h>
24
25
/*
26
* Create a simple rootfs that is similar to the default initramfs
27
*/
28
static int __init default_rootfs(void)
29
{
30
int err;
31
32
err = sys_mkdir((const char __user __force *) "/dev", 0755);
33
if (err < 0)
34
goto out;
35
36
err = sys_mknod((const char __user __force *) "/dev/console",
37
S_IFCHR | S_IRUSR | S_IWUSR,
38
new_encode_dev(MKDEV(5, 1)));
39
if (err < 0)
40
goto out;
41
42
err = sys_mkdir((const char __user __force *) "/root", 0700);
43
if (err < 0)
44
goto out;
45
46
return 0;
47
48
out:
49
printk(KERN_WARNING "Failed to create a rootfs\n");
50
return err;
51
}
52
rootfs_initcall(default_rootfs);
53
54