summaryrefslogtreecommitdiffstats
path: root/sys-kernel/boest-v4.4.198/0014-4.4-2900_dev-root-proc-mount-fix.patch.patch
diff options
context:
space:
mode:
Diffstat (limited to 'sys-kernel/boest-v4.4.198/0014-4.4-2900_dev-root-proc-mount-fix.patch.patch')
-rw-r--r--sys-kernel/boest-v4.4.198/0014-4.4-2900_dev-root-proc-mount-fix.patch.patch49
1 files changed, 49 insertions, 0 deletions
diff --git a/sys-kernel/boest-v4.4.198/0014-4.4-2900_dev-root-proc-mount-fix.patch.patch b/sys-kernel/boest-v4.4.198/0014-4.4-2900_dev-root-proc-mount-fix.patch.patch
new file mode 100644
index 00000000..1e616bd8
--- /dev/null
+++ b/sys-kernel/boest-v4.4.198/0014-4.4-2900_dev-root-proc-mount-fix.patch.patch
@@ -0,0 +1,49 @@
+From 44c36b5b34fe5afc0794c8d0cb179f2d94f66491 Mon Sep 17 00:00:00 2001
+From: Mike Pagano <mpagano@gentoo.org>
+Date: Sun, 10 Jan 2016 12:18:55 -0500
+Subject: [PATCH 14/20] 4.4:2900_dev-root-proc-mount-fix.patch
+
+---
+ init/do_mounts.c | 22 ++++++++++++++++------
+ 1 file changed, 16 insertions(+), 6 deletions(-)
+
+diff --git a/init/do_mounts.c b/init/do_mounts.c
+index dea5de95c2dd..fb2528149b9f 100644
+--- a/init/do_mounts.c
++++ b/init/do_mounts.c
+@@ -490,7 +490,11 @@ void __init change_floppy(char *fmt, ...)
+ va_start(args, fmt);
+ vsprintf(buf, fmt, args);
+ va_end(args);
+- fd = sys_open("/dev/root", O_RDWR | O_NDELAY, 0);
++ if (saved_root_name[0])
++ fd = sys_open(saved_root_name, O_RDWR | O_NDELAY, 0);
++ else
++ fd = sys_open("/dev/root", O_RDWR | O_NDELAY, 0);
++
+ if (fd >= 0) {
+ sys_ioctl(fd, FDEJECT, 0);
+ sys_close(fd);
+@@ -534,11 +538,17 @@ void __init mount_root(void)
+ #endif
+ #ifdef CONFIG_BLOCK
+ {
+- int err = create_dev("/dev/root", ROOT_DEV);
+-
+- if (err < 0)
+- pr_emerg("Failed to create /dev/root: %d\n", err);
+- mount_block_root("/dev/root", root_mountflags);
++ if (saved_root_name[0] == '/') {
++ int err = create_dev(saved_root_name, ROOT_DEV);
++ if (err < 0)
++ pr_emerg("Failed to create %s: %d\n", saved_root_name, err);
++ mount_block_root(saved_root_name, root_mountflags);
++ } else {
++ int err = create_dev("/dev/root", ROOT_DEV);
++ if (err < 0)
++ pr_emerg("Failed to create /dev/root: %d\n", err);
++ mount_block_root("/dev/root", root_mountflags);
++ }
+ }
+ #endif
+ }