Disabling learning and turning the switch into a hub did indeed fix the issue. I added additional debugging output as I would like to figure out why entries from the switches FDB can't be removed, so when an entry is added or removed that is now logged in dmesg.
# bridge fdb add 11:22:33:44:55:66 dev wan self vlan 1
RTNETLINK answers: Invalid argument
Doing
# bridge fdb add 11:22:33:44:55:66 dev wan self
doesn't log anything, but I believe it should be added to the switch's FDB as I specified the self option? At this point I have seen my debug outputs during boot, but never afterwards, not even when roaming and the assisted learning should be doing it's thing....
FYI here is the patch to enable macs seen on non-physical interfaces to be removed from the fdb.
This is on top of Robimako's patch
Appears to work ok with my limited testing .
Yes, thereâs a very long issue on github and this problem also exists on ipq40xx. I suspect its something somewhere else in the kernel which affects all devices and some devices are starting to add workarounds to their driver code, which will cause problems some dayâŚ.
This patch still works btw after adapting it to the latest codebase. Unfortunately it's still needed today apparently. Maybe it's necessary to add the netdev_for_each_lower_dev to a higher level as it affects all CPUs apparently, at least ipq4xxx and the Qualcomm AX CPUs?
But i can also confirm that the patch is working great for my ipq6018 device as well, iperf3 roams are now working as expected. So happy to have this device working now as intended!
well it appears this patch is now no longer working (built from source on aug 15 works, new build with patch on sept 1st has the old roaming break behavior). it would be interesting if someone else could confirm this as well (to rule out i made a mistake somewhere)
FWIW, https://github.com/openwrt/qca-nss-dp/pull/2 has been merged and the latest qca-nss-dp driver updated in the 25.12 branch, so I presume main as well. My MX-4300v2 now works great in a VLANâed dumb AP config (VLAN 1 merged with âprimaryâ Wifi, VLAN 3 with IoT Wifi, VLAN 5 with guest Wifi) roaming to couple other ipq806x/generic routers in the same SSID (running on Meraki MR-42 and Meraki MR-52âs running both 24.10-SNAPSHOT and now 25.12-SNAPSHOT).
@rspierz the fix is the same one discussed upthread here, and is enshrined in the kmod-qca-nss-dp-6.12.63.2025.11.24~19c51af0-r1 package (note the 2025-11-24 date). If ipq60xx doesnât use this driver, you might need to push it to the appropriate switch driver used by ipq60xx.
To identity if you are using that driver, apk info kmod-qca-nss-dp is a starting place (canât have the fix without the package ;)), then lsmod | grep nss or inspection of dmesg are next steps.
EDIT: Also, Iâm discussing stock OpenWRT, not the NSS builds⌠for those, I have ~ 0 idea of whether this fix works or not⌠it would also need to be in whoeverâs custom NSS tree.