[package] sysupgrade: sync *before* mtd write, only fallback to sysrq-trigger if standard reboot fails

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16488 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Jo-Philipp Wich 2009-06-17 11:09:10 +00:00
parent 52d9ffca97
commit 1cd6c8a2c0
2 changed files with 5 additions and 4 deletions

View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=base-files PKG_NAME:=base-files
PKG_RELEASE:=22 PKG_RELEASE:=23
PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/ PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/

View File

@ -142,12 +142,12 @@ jffs2_copy_config() {
} }
default_do_upgrade() { default_do_upgrade() {
sync
if [ "$SAVE_CONFIG" -eq 1 -a -z "$USE_REFRESH" ]; then if [ "$SAVE_CONFIG" -eq 1 -a -z "$USE_REFRESH" ]; then
get_image "$1" | mtd -j "$CONF_TAR" write - "${PART_NAME:-image}" get_image "$1" | mtd -j "$CONF_TAR" write - "${PART_NAME:-image}"
else else
get_image "$1" | mtd write - "${PART_NAME:-image}" get_image "$1" | mtd write - "${PART_NAME:-image}"
fi fi
sync
} }
do_upgrade() { do_upgrade() {
@ -157,7 +157,7 @@ do_upgrade() {
else else
default_do_upgrade "$ARGV" default_do_upgrade "$ARGV"
fi fi
[ "$SAVE_CONFIG" -eq 1 -a -n "$USE_REFRESH" ] && { [ "$SAVE_CONFIG" -eq 1 -a -n "$USE_REFRESH" ] && {
v "Refreshing partitions" v "Refreshing partitions"
if type 'platform_refresh_partitions' >/dev/null 2>/dev/null; then if type 'platform_refresh_partitions' >/dev/null 2>/dev/null; then
@ -175,7 +175,8 @@ do_upgrade() {
[ -n "$DELAY" ] && sleep "$DELAY" [ -n "$DELAY" ] && sleep "$DELAY"
ask_bool 1 "Reboot" && { ask_bool 1 "Reboot" && {
v "Rebooting system..." v "Rebooting system..."
echo b 2>/dev/null >/proc/sysrq-trigger
reboot reboot
sleep 5
echo b 2>/dev/null >/proc/sysrq-trigger
} }
} }