[LEDE-DEV] [PATCH] base-files: ensure reset only works if an overlay exists

Chris Blake chrisrblake93 at gmail.com
Sat Oct 22 09:04:27 PDT 2016


Currently the reset script will try to run jffs2reset on boards that are
running a rw rootfs, such as ext4. This will cause jffs2reset to fail
and the board to never reboot while the LED blinks until a manual
reboot.

This commit does two different things:
1. Disables reset on boards that do not have an overlay mount
2. Disables the Blinking LED after 5 seconds if the board does not
support reset

Cc: Rafał Miłecki <rafal at milecki.pl>

Signed-off-by: Chris Blake <chrisrblake93 at gmail.com>
---
 package/base-files/files/etc/rc.button/reset | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/package/base-files/files/etc/rc.button/reset b/package/base-files/files/etc/rc.button/reset
index c6dc7cf..a0550e7 100755
--- a/package/base-files/files/etc/rc.button/reset
+++ b/package/base-files/files/etc/rc.button/reset
@@ -2,8 +2,12 @@
 
 . /lib/functions.sh
 
+OVERLAY="$(cat /proc/mounts | grep ' /overlay ' 2>/dev/null)"
+
 case "$ACTION" in
 pressed)
+	[ -z "$OVERLAY" ] && return 0
+
 	return 5
 ;;
 timeout)
@@ -16,7 +20,7 @@ released)
 		echo "REBOOT" > /dev/console
 		sync
 		reboot
-	elif [ "$SEEN" -gt 5 ]
+	elif [ "$SEEN" -gt 5 -a -n "$OVERLAY" ]
 	then
 		echo "FACTORY RESET" > /dev/console
 		jffs2reset -y && reboot &
-- 
2.7.4




More information about the Lede-dev mailing list