Glad you narrowed it down! It's pretty normal you can't roll back just the one commit, since those build on the previous ones. When you check the commit log, you'll see the commits in the external git tree that are part of the bump:
$ git show fe498dd3f1
commit fe498dd3f108de494594ae8e0eba207fdbf14594
Author: Felix Fietkau <nbd@nbd.name>
Date: Fri Jun 4 09:11:37 2021 +0200
netifd: update to the latest version
61a71e5e49c3 bridge: dynamically create vlans for hotplug members
cb6ee9608e10 bridge: fix dynamic delete of hotplug vlans
7f199050f395 wireless: pass the real network ifname to the setup script
50381d0a2998 bridge: allow adding/removing VLANs to configured member ports via hotplug
f12b073c0cc3 wireless: add some comments to functions
b0d090688302 bridge: fix setting pvid for updated vlans
ff3764ce28e0 device: move hotplug handling logic from system-linux.c to device.c
16bff892f415 ubus: add a dummy mode ubus call to simulate hotplug events
7f30b02013f2 examples: make dummy wireless vif names shorter
013a1171e9b0 device: do not treat devices with non-digit characters after . as vlan devices
f037b082923a wireless: handle WDS per-sta devices
db0fa24e1c17 bridge: fix enabling hotplug-added VLANs on the bridge port
4e92ea74273f bridge: bring up pre-existing vlans on hotplug as well
1f283c654aeb bridge: fix hotplug vlan overwrite on big-endian systems
I'm betting your issue is caused by one of the wireless changes, the repo is here. A final test would be to build directly from the git repo instead of using the git tarball the build environment pulls. At this point, you can just recompiled the single netifd package and upgrade/downgrade it with opkg
to your liking. No need to keep reflashing firmwares.
My money would be the f037b082923a
netifd commit. I've tried myself to revert just that in the netifd tree but it won't let me, so its time to call in the cavalry. I'd recommend you try IRC and ping @nbd there to see if he can assist, he committed fe498dd3f1
and did a lot of work on refactoring the networking code. Not sure if he replies on/reads the forum, and IRC makes for an easier back and forth (more realtime than a forum).
I'll include a quick write-up for completeness' sake on how to build straight from the git tree. It might expedite things if you already test a few commits.
- Enable
CONFIG_SRC_TREE_OVERRIDE
in the buildroot settings.
- Grab the netifd git tree and link it into your OpenWrt buildroot as follows:
$ git clone git://git.openwrt.org/project/netifd.git
$ cd path/to/21.01_tree/
$ ln -sv /path/to/netifd_git_tree package/network/config/netifd/git-src/
-
Compile netifd
$ make package/netifd/clean,compile} V=s
-
Install new netifd package on your router and test.
If you need to test a specific earlier commit, extend 2. with the following commands:
$ cd /path/to/netifd_git_tree
$ git checkout $git_hash
To revert a specific commit:
$ git revert f037b082923a
After that you can run 3. again. What I'd recommend is you build from netifd source before prodding nbd (he'll probably ask you to do so anyway so you can test patches at some point). Commit 013a117
is the commit prior to f037b08
(the WDS change), so if you check out that first commit, build from there, and it works, then build an image from commit db0fa24
(the commit after), you can be pretty sure the WDS one is the one causing trouble.