[OpenWrt-Devel] [PATCH] base-files: fix ramoverlay function with kernels 3.18+

Helmut Schaa helmut.schaa at googlemail.com
Thu Sep 17 08:24:16 EDT 2015


Even though there are not many users left within the OpenWrt tree it seems
this function broke during the kernel 3.18 transition.

Fix it by providing a workdir as required by overlayfs.

Signed-off-by: Helmut Schaa <helmut.schaa at googlemail.com>
---
 package/base-files/files/lib/functions/preinit.sh | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/package/base-files/files/lib/functions/preinit.sh b/package/base-files/files/lib/functions/preinit.sh
index db1f298..57862a1 100644
--- a/package/base-files/files/lib/functions/preinit.sh
+++ b/package/base-files/files/lib/functions/preinit.sh
@@ -75,13 +75,14 @@ pivot() { # <new_root> <old_root>
 	}
 }
 
-fopivot() { # <rw_root> <ro_root> <dupe?>
-	/bin/mount -o noatime,lowerdir=/,upperdir=$1 -t overlayfs "overlayfs:$1" /mnt
-	pivot /mnt $2
+fopivot() { # <rw_root> <work_dir> <ro_root> <dupe?>
+	/bin/mount -o noatime,lowerdir=/,upperdir=$1,workdir=$2 -t overlay "overlayfs:$1" /mnt
+	pivot /mnt $3
 }
 
 ramoverlay() {
 	mkdir -p /tmp/root
 	/bin/mount -t tmpfs -o noatime,mode=0755 root /tmp/root
-	fopivot /tmp/root /rom 1
+	mkdir -p /tmp/root/root /tmp/root/work
+	fopivot /tmp/root/root /tmp/root/work /rom 1
 }
-- 
1.8.4.5
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list