mac80211: skip unnecessary pskb_expand_head calls

If the skb is not cloned and we don't need any extra headroom, there
is no point in reallocating the skb head.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Felix Fietkau 2010-12-18 19:30:49 +01:00 committed by John W. Linville
parent 489ee9195a
commit 4cd06a344d
1 changed files with 3 additions and 1 deletions

View File

@ -1546,8 +1546,10 @@ static int ieee80211_skb_resize(struct ieee80211_local *local,
if (skb_header_cloned(skb)) if (skb_header_cloned(skb))
I802_DEBUG_INC(local->tx_expand_skb_head_cloned); I802_DEBUG_INC(local->tx_expand_skb_head_cloned);
else else if (head_need || tail_need)
I802_DEBUG_INC(local->tx_expand_skb_head); I802_DEBUG_INC(local->tx_expand_skb_head);
else
return 0;
if (pskb_expand_head(skb, head_need, tail_need, GFP_ATOMIC)) { if (pskb_expand_head(skb, head_need, tail_need, GFP_ATOMIC)) {
wiphy_debug(local->hw.wiphy, wiphy_debug(local->hw.wiphy,