Out of the blue a mesh router running OpenWrt 21.02 RC4 connected via 802.11s mesh mode (and mesh forwarding active and no other routing deamon if not the default 802.11s routing protocol) gets filled with garbage and the L2 connection between the mesh nodes to the router is lost (so the internet connection too).
After several times this thing has happened I finally found a weird thing which looks a symptom of the issue.
This happened on 24th of August:
iw mesh1 mpath dump
DEST ADDR NEXT HOP IFACE SN METRIC QLEN EXPTIME DTIM DRET FLAGS HOP_COUNT PATH_CHANGE
90:38:3d:dd:42:61 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
3a:bd:b8:ec:00:da 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
2e:bc:05:55:1b:fe 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
b6:75:f9:d4:75:21 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
2a:81:a7:88:b2:3d 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
38:cb:3b:46:a3:b0 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
1c:48:1f:b9:ff:2f 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
a4:e1:c5:1d:0b:67 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
0c:33:7e:b6:6f:aa 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
e4:fa:0b:af:d5:eb 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
32:e7:70:d6:00:b8 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
16:90:cc:07:c7:f4 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
f8:71:4d:52:77:92 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
0e:7e:0d:96:51:37 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
9a:bb:4e:36:2a:bc 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
a4:79:30:19:69:3c 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
56:6a:17:c7:c9:34 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
42:2d:3a:7a:5c:bb 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
c4:b3:59:4d:bc:34 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
50:7e:6b:64:9f:3b 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
24:0c:82:93:ab:13 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
b4:f6:42:5c:61:ba 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
62:53:bf:54:35:17 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
74:63:b3:cf:a8:7c 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
f6:03:a7:7e:d7:1d 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
fa:36:ca:7b:b1:b8 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
b2:18:10:ef:f1:01 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
c4:65:02:5d:d5:70 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
7c:b0:7f:84:c8:9a 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
ea:81:c8:f4:b2:7e 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
3c:2b:b6:77:6b:bd 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
ba:fb:37:ec:b6:a6 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
82:41:34:4c:43:0e 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
56:6d:a2:f8:b6:2f 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
c0:16:8a:96:cc:51 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
d6:d3:82:ad:2f:f1 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
a8:a9:46:b3:5f:ca 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
fa:df:0b:b6:2e:8a 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
d4:c9:a7:97:76:03 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
6a:d0:15:8a:42:2d 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
80:cc:d9:35:de:6c 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
40:be:bc:c5:fd:24 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
60:bf:68:ae:27:af 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
3c:36:c8:a9:25:1b 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
3e:41:c8:45:9a:9f 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
a4:e2:72:c5:02:b1 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
9c:c2:86:1b:af:b3 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
48:fe:59:b5:2e:2e 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
d2:2d:04:35:92:88 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
e2:d3:b2:81:cb:9f 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
38:ad:f7:d5:c0:16 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
ea:49:73:38:b0:3b 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
fa:c6:cb:89:dc:af 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
10:3a:ac:ff:8a:ca 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
ac:20:5b:27:eb:93 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
9a:0f:90:71:70:b7 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
84:ae:6f:11:6b:3d 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
14:eb:df:d2:02:dc 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
b2:cd:2a:46:e7:c4 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
fc:fd:65:9b:02:db 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
ac:c7:31:cc:f4:89 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
80:3f:5d:**:**:** 80:3f:5d:**:**:** mesh1 0 4857 0 0 0 0 0x10 1 1
Only the last route should be present here, the other routes I am not sure where they're coming from. There are many devices on the network but I don't think there are so many.
This has happened just tonight:
28 of August:
iw mesh1 mpath dump
DEST ADDR NEXT HOP IFACE SN METRIC QLEN EXPTIME DTIM DRET FLAGS HOP_COUNT PATH_CHANGE
d8:54:0b:7c:20:46 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
ce:43:28:84:44:7e 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
26:75:58:0b:39:18 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
80:3f:5d:**:**:** 80:3f:5d:**:**:** mesh1 0 4857 0 0 0 0 0x10 1 1
After a couple of minutes that I ran the same command, more routes are shown:
iw mesh1 mpath dump
DEST ADDR NEXT HOP IFACE SN METRIC QLEN EXPTIME DTIM DRET FLAGS HOP_COUNT PATH_CHANGE
16:dd:0c:a4:ba:aa 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
fc:93:c3:3b:0b:fe 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
90:f4:c0:8f:de:80 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
bc:a1:da:cb:87:a8 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
1e:f7:95:47:4a:b3 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
3a:e2:e6:88:65:fb 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
6c:cd:48:37:af:bc 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
d8:54:0b:7c:20:46 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
ce:43:28:84:44:7e 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
26:75:58:0b:39:18 00:00:00:00:00:00 mesh1 0 0 0 0 1600 4 0x0 0 0
80:3f:5d:**:**:** 80:3f:5d:**:**:** mesh1 0 4857 0 0 0 0 0x10 1 1
And if I leave it on, it gets filled with more and more.
Rebooting or giving wifi down && sleep 2 && wifi up
fixes it.
I tried removing the routes by hand but it didn't seem to fix it.
I have been having 2 other issues recently, one with the ethernet mediatek switch, another with wifi clients being disconnected all the time or not being able to connect.
I think that I may try the same build on the latest OpenWrt 19 branch to see if these issues have been around for a while or if they're new.
I may be wrong, but my impression is that WiFi with mediatek drivers is not working well in OpenWrt 21.02.
5GHz driver I'm using:
# readlink /sys/class/net/wlan1/device/driver
../../../../../../bus/pci/drivers/mt7615e
2GHz driver:
# readlink /sys/class/net/wlan0/device/driver
../../../../../../bus/pci/drivers/mt7603e
I am not sure the driver is related though, because the problem can happen regardless of the interface (I have 2 mesh interfaces, one per radio), but I'm adding the info for the sake of completeness.