mirror of
https://github.com/outbackdingo/mt76.git
synced 2026-10-24 13:26:48 +00:00
503c643b78bf5619686edc409e361f9865ba9b86
wcid->non_aql_packets is charged when a frame reaches the hardware queue and credited back from the completion path. For an MLO peer the hardware reports the completion against the link it actually transmitted on, which need not be the link the frame was queued for, so the charge and the credit can land on different link wcids. The credited side is clamped at zero while the charged side keeps the residue. Once it passes MT_MAX_NON_AQL_PKT, mt76_txq_schedule_list() skips that station on every pass and its traffic stops for good, with the frames left sitting in the mac80211 queues and nothing counted as dropped. Only a reassociation, which allocates new wcids, recovers it. Keep the count on the primary link's wcid, as is already done for the other peer-wide state. Signed-off-by: Felix Fietkau <[email protected]>
Description
mac80211 driver for MediaTek MT76x0e, MT76x2e, MT7603, MT7615, MT7628 and MT7688
105 MiB
Languages
C
99.7%
Perl
0.2%
Makefile
0.1%