I understand that, but my point is that @daniel posted this some days ago:
But @Brain2000 and I raised questions specifically around the statement of "In both cases you also need to switch on hardware flow offloading..." because documentation for WED seems to state SW/HW offloading is not required.
So, my question back to @daniel was meant to clarify, if you enable the HW & SW offloading options in /etc/config/firewall, then what, besides the firewall service, would care about those settings? Hence, does the firewall service itself need to be running? Does bridger look for those settings?
I was just trying to get to the bottom of the reasoning from @daniel's perspective, given his expertise at the code level of much of this. And he confirmed the answer here:
For anybody building their own snapshot firmware who wishes to look at the debug info for Bridger, I have enabled debug output on my fork. You can pull the debug enabled code by using this patch:
Updated patch process here:
On a debug enabled build, you can stop the Bridger service, then execute the /usr/sbin/bridger binary explicitly. The debug info is placed into stderr, so you will see it scrolling on your terminal as long as Bridger is running.
FWIW, I am running it like so: /usr/sbin/bridger 2>/tmp/bridger_log
In this way, I can tail -f /tmp/bridger_log and potentially filter (via grep) the log without having to keep starting and stopping the Bridger binary.
I am providing this just to help those who are troubleshooting Bridger/WED, or just gaining a better understanding of how it works. I am not taking over support for Bridger by any means.
If you wish to enable the log as part of the service (while troubleshooting), you can modify the start_service() function in /etc/init.d/bridger as such:
FYI, I updated the patch I linked in Pastebin. Instead of having to switch over to my Bridger fork, you can stick with Felix's source and run the following in your OpenWrt build system to apply the updated patch to turn on debug output:
@Brain2000 FYI, I am also running with these patches included in my build and no negative side-effects noticed as of yet.
$ ls -l package/kernel/mt76/patches/
-rw-r--r-- 1 user user 769 May 3 14:19 0001-wifi-mt76-mt7915-fix-background-radar-event-being-bl.patch
-rw-r--r-- 1 user user 7705 May 3 14:19 0002-wifi-mt76-mt7915-Update-beacon-size-limitation-for-1.patch
-rw-r--r-- 1 user user 8526 Apr 29 13:05 0003-wifi-mt76-mt7915-disable-wfdma-tx-rx-during-SER-reco.patch
-rw-r--r-- 1 user user 1019 May 3 14:52 0004-wifi-mt76-mt7915-fix-the-beamformer-issue.patch
There are some interesting attempts at simplifying the (mac80211 and cfg80211 related) locking code, which might drastically reduce the need for locks in wireless drivers like mt76.
Would more of the fixes discussed in this thread be part of this commit to snapshot?
commit f7665a0f1a2da63e2046119c0c3de578f16651ce
Author: David Bauer <mail@david-bauer.net>
Date: Wed May 17 20:37:21 2023 +0200
mt76: update to latest HEAD
I am running with snapshot 4e5aac472935ce3ba3abc9bd72b880951843092b (the one with the bridger update) and did not have to reboot my rt3200 since more than a week.
Before this bridger update I had to reboot more frequently (sometimes daily), in particular with more wifi STAs.
The RT3200 are APs with bridger installed and enabled (even though WED is off right now) and they do have vlans.
Edit: had to reboot again, but still seems to be needed less frequently.
@rany are you rany2 from github? I see you have been running wifi: mt76: mt7915: fix the beamformer issue for a few weeks/months now. I am curious. Is it any good? Could you provide feedback why this commit (and some others in your tree) have not been pushed upstream or into the mt76 repo?
I sure am scratching my head around WED again. It doesn't work consistently for me. For example, if I restart bridger and then immediately begin an iperf3 test with another LAN host on my network, I see a flow appear in /sys/kernel/debug/ppe0/bind for the length of the "download" to my iperf3 [wireless] client machine. Once the iperf3 completes, I will run it again with the exact same arguments and the flow does not show up in /sys/kernel/debug/ppe0/bind.
I find the above behavior happening again and again, but even with other STAs doing normal internet traffic. It just is inconsistent, at best.
Can you confirm if what I'm describing is an anomaly or if I'm actually seeing "correct" behavior?