iwlwifi: pcie: gen2: build A-MSDU only for GSO
[ Upstream commit53f474e6a8] If the incoming frame should be an A-MSDU, it may already be one, for example in the case of NAN multicast being encapsulated in an A-MSDU. Thus, use the GSO algorithm to build A-MSDU only if the skb actually contains GSO data. Fixes:6ffe5de35b("iwlwifi: pcie: add AMSDU to gen2") Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
f4f0909f3d
commit
08d2000d21
1 changed files with 6 additions and 1 deletions
|
|
@ -526,7 +526,12 @@ struct iwl_tfh_tfd *iwl_pcie_gen2_build_tfd(struct iwl_trans *trans,
|
|||
|
||||
hdr_len = ieee80211_hdrlen(hdr->frame_control);
|
||||
|
||||
if (amsdu)
|
||||
/*
|
||||
* Only build A-MSDUs here if doing so by GSO, otherwise it may be
|
||||
* an A-MSDU for other reasons, e.g. NAN or an A-MSDU having been
|
||||
* built in the higher layers already.
|
||||
*/
|
||||
if (amsdu && skb_shinfo(skb)->gso_size)
|
||||
return iwl_pcie_gen2_build_tx_amsdu(trans, txq, dev_cmd, skb,
|
||||
out_meta, hdr_len, len);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue