mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-21 22:47:56 +00:00
d033c3ba87
Add kernel tags to the patches that got accepted upstream. Signed-off-by: Nick Hainke <vincent@systemli.org>
55 lines
2.0 KiB
Diff
55 lines
2.0 KiB
Diff
From: Felix Fietkau <nbd@nbd.name>
|
|
Date: Fri, 2 Dec 2022 17:01:46 +0100
|
|
Subject: [PATCH] wifi: mac80211: remove mesh forwarding congestion check
|
|
|
|
Now that all drivers use iTXQ, it does not make sense to check to drop
|
|
tx forwarding packets when the driver has stopped the queues.
|
|
fq_codel will take care of dropping packets when the queues fill up
|
|
|
|
Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|
---
|
|
|
|
--- a/net/mac80211/debugfs_netdev.c
|
|
+++ b/net/mac80211/debugfs_netdev.c
|
|
@@ -603,8 +603,6 @@ IEEE80211_IF_FILE(fwded_mcast, u.mesh.ms
|
|
IEEE80211_IF_FILE(fwded_unicast, u.mesh.mshstats.fwded_unicast, DEC);
|
|
IEEE80211_IF_FILE(fwded_frames, u.mesh.mshstats.fwded_frames, DEC);
|
|
IEEE80211_IF_FILE(dropped_frames_ttl, u.mesh.mshstats.dropped_frames_ttl, DEC);
|
|
-IEEE80211_IF_FILE(dropped_frames_congestion,
|
|
- u.mesh.mshstats.dropped_frames_congestion, DEC);
|
|
IEEE80211_IF_FILE(dropped_frames_no_route,
|
|
u.mesh.mshstats.dropped_frames_no_route, DEC);
|
|
|
|
@@ -740,7 +738,6 @@ static void add_mesh_stats(struct ieee80
|
|
MESHSTATS_ADD(fwded_frames);
|
|
MESHSTATS_ADD(dropped_frames_ttl);
|
|
MESHSTATS_ADD(dropped_frames_no_route);
|
|
- MESHSTATS_ADD(dropped_frames_congestion);
|
|
#undef MESHSTATS_ADD
|
|
}
|
|
|
|
--- a/net/mac80211/ieee80211_i.h
|
|
+++ b/net/mac80211/ieee80211_i.h
|
|
@@ -329,7 +329,6 @@ struct mesh_stats {
|
|
__u32 fwded_frames; /* Mesh total forwarded frames */
|
|
__u32 dropped_frames_ttl; /* Not transmitted since mesh_ttl == 0*/
|
|
__u32 dropped_frames_no_route; /* Not transmitted, no route found */
|
|
- __u32 dropped_frames_congestion;/* Not forwarded due to congestion */
|
|
};
|
|
|
|
#define PREQ_Q_F_START 0x1
|
|
--- a/net/mac80211/rx.c
|
|
+++ b/net/mac80211/rx.c
|
|
@@ -2926,11 +2926,6 @@ ieee80211_rx_h_mesh_fwding(struct ieee80
|
|
return RX_CONTINUE;
|
|
|
|
ac = ieee802_1d_to_ac[skb->priority];
|
|
- q = sdata->vif.hw_queue[ac];
|
|
- if (ieee80211_queue_stopped(&local->hw, q)) {
|
|
- IEEE80211_IFSTA_MESH_CTR_INC(ifmsh, dropped_frames_congestion);
|
|
- return RX_DROP_MONITOR;
|
|
- }
|
|
skb_set_queue_mapping(skb, ac);
|
|
|
|
if (!--mesh_hdr->ttl) {
|