projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ARM: rockchip: rk3228: implement function rk3228_restart
[firefly-linux-kernel-4.4.55.git]
/
init
/
initramfs.c
diff --git
a/init/initramfs.c
b/init/initramfs.c
index a67ef9dbda9dae0ea7a1619a393c55157a6d8592..43ae0cc9df48c1851a8611a247b26875430249a2 100644
(file)
--- a/
init/initramfs.c
+++ b/
init/initramfs.c
@@
-18,6
+18,7
@@
#include <linux/dirent.h>
#include <linux/syscalls.h>
#include <linux/utime.h>
#include <linux/dirent.h>
#include <linux/syscalls.h>
#include <linux/utime.h>
+#include <linux/initramfs.h>
static __initdata char *message;
static void __init error(char *x)
static __initdata char *message;
static void __init error(char *x)
@@
-579,9
+580,25
@@
static void __init clean_rootfs(void)
}
#endif
}
#endif
+static int __initdata do_skip_initramfs;
+
+static int __init skip_initramfs_param(char *str)
+{
+ if (*str)
+ return 0;
+ do_skip_initramfs = 1;
+ return 1;
+}
+__setup("skip_initramfs", skip_initramfs_param);
+
static int __init populate_rootfs(void)
{
static int __init populate_rootfs(void)
{
- char *err = unpack_to_rootfs(__initramfs_start, __initramfs_size);
+ char *err;
+
+ if (do_skip_initramfs)
+ return default_rootfs();
+
+ err = unpack_to_rootfs(__initramfs_start, __initramfs_size);
if (err)
panic(err); /* Failed to decompress INTERNAL initramfs */
if (initrd_start) {
if (err)
panic(err); /* Failed to decompress INTERNAL initramfs */
if (initrd_start) {