wifi: ath12k: Fix invalid 802.11 header formation due to crypto header overwrite
When IV and ICV are not stripped from the given MSDU, mac80211 performs PN validation for these MSDUs, which requires the crypto header. Before forming the crypto header from the given rx descriptor, skb_push() is performed for the crypto header length, which overwrites the memory pointed to by the rx descriptor, causing invalid information to form the 802.11 header. Fix this by moving all rx descriptor accesses before the crypto header formation, ensuring the proper 802.11 header is generated from the given rx descriptor. Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.4.1-00199-QCAHKSWPL_SILICONZ-1 Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3 Fixes: d8899132 ("wifi: ath12k: driver for Qualcomm Wi-Fi 7 devices") Co-developed-by:Karthikeyan Periyasamy <karthikeyan.periyasamy@oss.qualcomm.com> Signed-off-by:
Karthikeyan Periyasamy <karthikeyan.periyasamy@oss.qualcomm.com> Signed-off-by:
P Praneesh <praneesh.p@oss.qualcomm.com> Signed-off-by:
Raj Kumar Bhagat <quic_rajkbhag@quicinc.com> Signed-off-by:
Jeff Johnson <jeff.johnson@oss.qualcomm.com>
Loading
Please sign in to comment