diff options
author | Felix Fietkau <nbd@openwrt.org> | 2010-12-18 17:23:38 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2010-12-18 17:23:38 +0000 |
commit | 121b27fb2b3554653aae0f5cfec0c626f29bf75a (patch) | |
tree | 30bc1c24c0c6cd7efec25523c386e84242822af7 /package | |
parent | 4e19240b9b9a87202244be617d706f4f0668bacb (diff) | |
download | upstream-121b27fb2b3554653aae0f5cfec0c626f29bf75a.tar.gz upstream-121b27fb2b3554653aae0f5cfec0c626f29bf75a.tar.bz2 upstream-121b27fb2b3554653aae0f5cfec0c626f29bf75a.zip |
mac80211: significantly reduce the cpu load caused by excessive skb header cloning
SVN-Revision: 24669
Diffstat (limited to 'package')
-rw-r--r-- | package/mac80211/patches/540-mac80211_tx_optimization.patch | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/package/mac80211/patches/540-mac80211_tx_optimization.patch b/package/mac80211/patches/540-mac80211_tx_optimization.patch new file mode 100644 index 0000000000..e239abd828 --- /dev/null +++ b/package/mac80211/patches/540-mac80211_tx_optimization.patch @@ -0,0 +1,14 @@ +--- a/net/mac80211/tx.c ++++ b/net/mac80211/tx.c +@@ -1549,8 +1549,10 @@ static int ieee80211_skb_resize(struct i + + if (skb_header_cloned(skb)) + I802_DEBUG_INC(local->tx_expand_skb_head_cloned); +- else ++ else if (head_need || tail_need) + I802_DEBUG_INC(local->tx_expand_skb_head); ++ else ++ return; + + if (pskb_expand_head(skb, head_need, tail_need, GFP_ATOMIC)) { + wiphy_debug(local->hw.wiphy, |