summaryrefslogtreecommitdiffstats
path: root/tools/busybox-patches/unionfs-run-init-1.10.2.diff
diff options
context:
space:
mode:
Diffstat (limited to 'tools/busybox-patches/unionfs-run-init-1.10.2.diff')
-rw-r--r--tools/busybox-patches/unionfs-run-init-1.10.2.diff14
1 files changed, 14 insertions, 0 deletions
diff --git a/tools/busybox-patches/unionfs-run-init-1.10.2.diff b/tools/busybox-patches/unionfs-run-init-1.10.2.diff
new file mode 100644
index 00000000..6e1d25fb
--- /dev/null
+++ b/tools/busybox-patches/unionfs-run-init-1.10.2.diff
@@ -0,0 +1,14 @@
+diff -wur busybox-1.10.2/util-linux/switch_root.c busybox-1.10.2-openslx/util-linux/switch_root.c
+--- busybox-1.10.2/util-linux/switch_root.c 2008-04-19 05:50:39.000000000 +0200
++++ busybox-1.10.2-openslx/util-linux/switch_root.c 2008-05-31 18:20:21.000000000 +0200
+@@ -105,6 +105,10 @@
+ // Overmount / with newdir and chroot into it. The chdir is needed to
+ // recalculate "." and ".." links.
+
++ if ( !lstat("/rorootfs", &st1 ) )
++ if ( mount("/rorootfs", "/", NULL, MS_MOVE, NULL) )
++ bb_error_msg_and_die("moving rorootfs");
++
+ if (mount(".", "/", NULL, MS_MOVE, NULL))
+ bb_error_msg_and_die("error moving root");
+ xchroot(".");