diff options
author | Avraham Stern <avraham.stern@intel.com> | 2023-04-13 10:44:15 +0300 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2023-04-13 16:30:00 +0200 |
commit | 217f3c52f00d3419ecdd38a99a7eceecb11679b2 (patch) | |
tree | 86aeaa0b39bd8e04c8b5edd04f3174a8bdd845da /drivers/net/wireless/intel/iwlwifi/mvm | |
parent | 277f56a141fc54ef7f9e09dba65fb2e12021411d (diff) | |
download | linux-217f3c52f00d3419ecdd38a99a7eceecb11679b2.tar.gz linux-217f3c52f00d3419ecdd38a99a7eceecb11679b2.tar.bz2 linux-217f3c52f00d3419ecdd38a99a7eceecb11679b2.zip |
wifi: iwlwifi: mvm: don't set CHECKSUM_COMPLETE for unsupported protocols
On Bz devices, CHECKSUM_COMPLETE was set for unsupported protocols
which results in a warning. Fix it.
Fixes: b6f5b647f694 ("iwlwifi: mvm: handle RX checksum on Bz devices")
Signed-off-by: Avraham Stern <avraham.stern@intel.com>
Signed-off-by: Gregory Greenman <gregory.greenman@intel.com>
Link: https://lore.kernel.org/r/20230413102635.a2a35286f0ca.I50daa9445a6465514c44f5096c32adef64beba5f@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/mvm')
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c b/drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c index 5d803e537b00..31e1d0ccdec5 100644 --- a/drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c +++ b/drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c @@ -172,8 +172,7 @@ static int iwl_mvm_create_skb(struct iwl_mvm *mvm, struct sk_buff *skb, * Starting from Bz hardware, it calculates starting directly after * the MAC header, so that matches mac80211's expectation. */ - if (skb->ip_summed == CHECKSUM_COMPLETE && - mvm->trans->trans_cfg->device_family < IWL_DEVICE_FAMILY_BZ) { + if (skb->ip_summed == CHECKSUM_COMPLETE) { struct { u8 hdr[6]; __be16 type; @@ -188,7 +187,7 @@ static int iwl_mvm_create_skb(struct iwl_mvm *mvm, struct sk_buff *skb, shdr->type != htons(ETH_P_PAE) && shdr->type != htons(ETH_P_TDLS)))) skb->ip_summed = CHECKSUM_NONE; - else + else if (mvm->trans->trans_cfg->device_family < IWL_DEVICE_FAMILY_BZ) /* mac80211 assumes full CSUM including SNAP header */ skb_postpush_rcsum(skb, shdr, sizeof(*shdr)); } |