sysupgrade: sync *before* mtd write, only fallback to sysrq-trigger if standard reboo...
authorJo-Philipp Wich <jow@openwrt.org>
Wed, 17 Jun 2009 11:09:10 +0000 (11:09 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Wed, 17 Jun 2009 11:09:10 +0000 (11:09 +0000)
SVN-Revision: 16488

package/base-files/Makefile
package/base-files/files/lib/upgrade/common.sh

index 81d63d9ffd31a62669ce50c7d6e29c1a17b299c2..f9ad4e73668b228cab895eb5c242f3ee1faf406b 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=base-files
-PKG_RELEASE:=22
+PKG_RELEASE:=23
 
 PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/
 
index d0ae8fef5b8443df82a6845da5615e99a5bfc1ff..2c392496a0981763ebfa31dadbef00dbd3ff16d4 100644 (file)
@@ -142,12 +142,12 @@ jffs2_copy_config() {
 }
 
 default_do_upgrade() {
+       sync
        if [ "$SAVE_CONFIG" -eq 1 -a -z "$USE_REFRESH" ]; then
                get_image "$1" | mtd -j "$CONF_TAR" write - "${PART_NAME:-image}"
        else
                get_image "$1" | mtd write - "${PART_NAME:-image}"
        fi
-       sync
 }
 
 do_upgrade() {
@@ -157,7 +157,7 @@ do_upgrade() {
        else
                default_do_upgrade "$ARGV"
        fi
-       
+
        [ "$SAVE_CONFIG" -eq 1 -a -n "$USE_REFRESH" ] && {
                v "Refreshing partitions"
                if type 'platform_refresh_partitions' >/dev/null 2>/dev/null; then
@@ -175,7 +175,8 @@ do_upgrade() {
        [ -n "$DELAY" ] && sleep "$DELAY"
        ask_bool 1 "Reboot" && {
                v "Rebooting system..."
-               echo b 2>/dev/null >/proc/sysrq-trigger
                reboot
+               sleep 5
+               echo b 2>/dev/null >/proc/sysrq-trigger
        }
 }