lkml.org 
[lkml]   [2021]   [Sep]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.14 073/217] mac80211: Fix insufficient headroom issue for AMSDU
    Date
    From: Chih-Kang Chang <gary.chang@realtek.com>

    [ Upstream commit f50d2ff8f016b79a2ff4acd5943a1eda40c545d4 ]

    ieee80211_amsdu_realloc_pad() fails to account for extra_tx_headroom,
    the original reserved headroom might be eaten. Add the necessary
    extra_tx_headroom.

    Fixes: 6e0456b54545 ("mac80211: add A-MSDU tx support")
    Signed-off-by: Chih-Kang Chang <gary.chang@realtek.com>
    Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
    Link: https://lore.kernel.org/r/20210816085128.10931-2-pkshih@realtek.com
    [fix indentation]
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    net/mac80211/tx.c | 4 +++-
    1 file changed, 3 insertions(+), 1 deletion(-)

    diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c
    index c7e8935224c0..e7b63ba8c184 100644
    --- a/net/mac80211/tx.c
    +++ b/net/mac80211/tx.c
    @@ -3080,7 +3080,9 @@ static bool ieee80211_amsdu_prepare_head(struct ieee80211_sub_if_data *sdata,
    if (info->control.flags & IEEE80211_TX_CTRL_AMSDU)
    return true;

    - if (!ieee80211_amsdu_realloc_pad(local, skb, sizeof(*amsdu_hdr)))
    + if (!ieee80211_amsdu_realloc_pad(local, skb,
    + sizeof(*amsdu_hdr) +
    + local->hw.extra_tx_headroom))
    return false;

    data = skb_push(skb, sizeof(*amsdu_hdr));
    --
    2.30.2


    \
     
     \ /
      Last update: 2021-09-20 19:37    [W:4.098 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site