diff options
author | Mordechay Goodstein <mordechay.goodstein@intel.com> | 2024-05-10 16:06:35 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2024-05-29 15:30:13 +0200 |
commit | 0f2e9f6f21d1ff292363cdfb5bc4d492eeaff76e (patch) | |
tree | d3e81a78295394e7c65a46eb9f26f42cde50e3a7 /drivers/net | |
parent | wifi: iwlwifi: mvm: revert gen2 TX A-MPDU size to 64 (diff) | |
download | linux-0f2e9f6f21d1ff292363cdfb5bc4d492eeaff76e.tar.xz linux-0f2e9f6f21d1ff292363cdfb5bc4d492eeaff76e.zip |
wifi: iwlwifi: mvm: set properly mac header
In the driver we only use skb_put* for adding data to the skb, hence data
never moves and skb_reset_mac_haeder would set mac_header to the first
time data was added and not to mac80211 header, fix this my using the
actual len of bytes added for setting the mac header.
Fixes: 3f7a9d577d47 ("wifi: iwlwifi: mvm: simplify by using SKB MAC header pointer")
Signed-off-by: Mordechay Goodstein <mordechay.goodstein@intel.com>
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://msgid.link/20240510170500.12f2de2909c3.I72a819b96f2fe55bde192a8fd31a4b96c301aa73@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c b/drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c index d78af2928152..489cfb0a4ab1 100644 --- a/drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c +++ b/drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c @@ -2450,8 +2450,11 @@ void iwl_mvm_rx_monitor_no_data(struct iwl_mvm *mvm, struct napi_struct *napi, * * We mark it as mac header, for upper layers to know where * all radio tap header ends. + * + * Since data doesn't move data while putting data on skb and that is + * the only way we use, data + len is the next place that hdr would be put */ - skb_reset_mac_header(skb); + skb_set_mac_header(skb, skb->len); /* * Override the nss from the rx_vec since the rate_n_flags has |