From 8ad45992acab9a2dead144d5b387fbe132ce59c1 Mon Sep 17 00:00:00 2001 From: Marek Lindner Date: Sun, 2 Dec 2018 22:02:04 +0800 Subject: [PATCH] ipq40xx: fix openmesh sysupgrade with tar content out of order The tar extraction depends on the order in which the files are added to the tar file. Since the order is not guaranteed and depends on the host system, the combined mtd write fails with sysupgrade images built on some systems. Fix by changing to tar file order independent mtd write. Fixes: 86e18f6706e1 ("ipq806x: add support for OpenMesh A42") Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann --- target/linux/ipq40xx/base-files/lib/upgrade/openmesh.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/target/linux/ipq40xx/base-files/lib/upgrade/openmesh.sh b/target/linux/ipq40xx/base-files/lib/upgrade/openmesh.sh index 081f3305c3..f4bc7e7565 100644 --- a/target/linux/ipq40xx/base-files/lib/upgrade/openmesh.sh +++ b/target/linux/ipq40xx/base-files/lib/upgrade/openmesh.sh @@ -76,9 +76,9 @@ platform_do_upgrade_openmesh() { # take care of restoring a saved config [ "$SAVE_CONFIG" -eq 1 ] && restore_backup="${MTD_CONFIG_ARGS} -j ${CONF_TAR}" - # write concatinated kernel + rootfs to flash - tar xf $tar_file ${board_dir}/kernel ${board_dir}/root -O | \ - mtd $restore_backup write - $PART_NAME + mtd -q erase inactive + tar xf $tar_file ${board_dir}/root -O | mtd -n -p $kernel_length $restore_backup write - $PART_NAME + tar xf $tar_file ${board_dir}/kernel -O | mtd -n write - $PART_NAME # prepare new u-boot env if [ "$next_boot_part" = "1" ]; then