Xiaomi Redmi AC2100 upgrade to 21.02 doesnt keep config (ubifs zstd ?)

Hi all
I've searched the forums but couldn't find a solution
I've just upgraded this router from 19.07 to 21.02 via the luci web ui
The upgrade went successfully however the router wouldn't retain the config.
i attempted to restore the config from the previous settings prior to the upgrade, but no go.
Even if i push the reset and start setting it up from scratch, it wont preserve the settings after a reboot.

Any ideas?
Thx, Earl


It's in the release notes. Settings from 19 are not compatible with 21


If you set it up from scratch and it did not persist, that likely means there was an incompatible config setting and it reverted back to default settings. Likely a LuCI bug.

Unless there is some feature in 21 that you must have, I suggest sticking with 19.

It doesn't pay to be an early adopter of such a significant major update.

1 Like

thanks Elvis,

the release notes mention that 19.07 is a compatible upgrade path. it worked fine on another router and kept its settings.
i agree that this may be early adopter syndrome, however nothing earlier is officially supported any more.
Can i even downgrade and if so, how?

"does not keep config at reboot" usually means that config was written to ramdisk instead of flash.

Does your overlay get properly mounted? Are there errors/messages in system log regarding to overlay, jffs2 or ubi?

yes that seems to be the case. How to fix this?

Wed Sep  1 08:20:13 2021 kern.notice kernel: [   11.479546] UBIFS (ubi0:1): Mounting in unauthenticated mode
Wed Sep  1 08:20:13 2021 kern.err kernel: [   11.485224] UBIFS error (ubi0:1 pid 603): 0x80236c50: 'compressor "zstd" is not compiled in
Wed Sep  1 08:20:13 2021 user.err kernel: [   11.494590] mount_root: failed to mount -t ubifs /dev/ubi0_1 /tmp/overlay: No error information
Wed Sep  1 08:20:13 2021 user.info kernel: [   11.503593] mount_root: overlay filesystem has not been fully initialized yet
Wed Sep  1 08:20:13 2021 user.info kernel: [   11.511056] mount_root: switching to ubifs overlay
Wed Sep  1 08:20:13 2021 user.err kernel: [   11.515938] mount_root: switching to ubifs failed - fallback to ramoverlay
Wed Sep  1 08:20:13 2021 user.warn kernel: [   11.526798] urandom-seed: Seed file not found (/etc/urandom.seed)

That looks new to me... "compressor "zstd" is not compiled in"

any idea, @rsalvaterra ?
(as you have authored ubifs zstd changes in master)

@hnyman, that's strange. If the zstd compressor isn't available, ubifs shouldn't be trying to use it at all. @earlcom, is this an official image, or are you compiling from the source?

1 Like

I first thought that the UBI might have been originally initialised with a master build (where zstd is and is the default nowadays), but @earlcom says that he has upgraded from 19.07...

Maybe zstd support should be compiled in always in 21.02, so that upgrades/downgrades from zstd enabled builds would be possible. (I am not quite sure how "global" and sticky the ubi compression selection is, does it survive sysupgrades?)

That would be great, and it's been suggested before (by yours truly), but it would increase the kernel size by a non-trivial amount. Zstd is a large compressor (codewise).

its an official image

This gets stranger by the minute. My zstd-by-default (if available!) ubifs patch hasn't been backported at all to 21.02.

Which OpenWrt builds have you used earlier?
only 19.07 after the original OEM image?

This is message implies an error at decompression time. Are you sure you've never tested any other image (e.g. snapshot from master) aside from upgrading from 19.07 to 21.02?

Only 19.x (and maybe 18.x), a few iterations in the past year or so.
Only snapshots were available
Never had a problem

That is contradictory. 19.07.x are fixed releases.
If you have been using "snapshots", you have likely used the master branch, and have now actually downgraded to 21.02, which causes this error as master supports more advanced zstd compression since April 2021 than 21.02 (which is based on February 2021).

Looking more closely, it looks like your device does not even exist for 19.07...
No image download here: https://downloads.openwrt.org/releases/19.07.8/targets/ramips/mt7621/

Support for the device has been introduced in mid-2020.

Are you quite sure that you have used a build branded "19.07" ?????

If you have used master "SNAPSHOT" builds, then your error is understandable, as you have now downgraded to older OpenWrt code without support for the newer compression.


Here's what bit you: https://git.openwrt.org/?p=openwrt/openwrt.git;a=commitdiff;h=be7b5602789902692090abb10c971651887cd62b
You need to do a complete wipe, in order to reformat the overlay. Sorry about that, but master is master. We strive to keep it stable, but if it breaks, you are expected to know what you're doing.

Thanks. It was a July build from memory.
Quite happy to do a complete wipe.
Does that mean reverting to stock first?
Could you point me to the relevant information on what to do from here.
Thanks again for your help

i used jffs2reset, restored the settings
and it appears to be retaining the config after reboot

1 Like

If your problem is solved, please consider marking this topic as [Solved]. See How to mark a topic as [Solved] for a short how-to.