Patch "wifi: ath12k: fix fetching MCBC flag for QCN9274" has been added to the 6.6-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    wifi: ath12k: fix fetching MCBC flag for QCN9274

to the 6.6-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     wifi-ath12k-fix-fetching-mcbc-flag-for-qcn9274.patch
and it can be found in the queue-6.6 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 8762499b74f7b34c46e0a541154646b10661a81a
Author: Raj Kumar Bhagat <quic_rajkbhag@xxxxxxxxxxx>
Date:   Mon Jan 29 12:27:15 2024 +0530

    wifi: ath12k: fix fetching MCBC flag for QCN9274
    
    [ Upstream commit 902700d55d4a4522bb3eb4ef94f752a19c42230a ]
    
    In QCN9274, RX packet's multicast and broadcast(MCBC) flag is fetched
    from RX descriptor's msdu_end info5 member but it is not correct
    for QCN9274. Due to this with encryption, ARP request packet is wrongly
    marked as MCBC packet and it is sent to mac80211 without setting
    RX_FLAG_PN_VALIDATED & RX_FLAG_DECRYPTED flag. This results in packet
    getting dropped in mac80211. Hence ping initiated from station to AP
    fails.
    
    Fix this by fetching correct MCBC flag in case of QCN9274.
    For QC9274 MCBC flag should be fetched from RX descriptor's mpdu_start
    info6 member.
    
    Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.1.1-00188-QCAHKSWPL_SILICONZ-1
    Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1
    Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3
    
    Fixes: 8f04852e90cb ("wifi: ath12k: Use msdu_end to check MCBC")
    Signed-off-by: Raj Kumar Bhagat <quic_rajkbhag@xxxxxxxxxxx>
    Acked-by: Jeff Johnson <quic_jjohnson@xxxxxxxxxxx>
    Signed-off-by: Kalle Valo <quic_kvalo@xxxxxxxxxxx>
    Link: https://msgid.link/20240129065724.2310207-5-quic_rajkbhag@xxxxxxxxxxx
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/net/wireless/ath/ath12k/hal.c b/drivers/net/wireless/ath/ath12k/hal.c
index b07ab583675e7..0b5a91ab0df49 100644
--- a/drivers/net/wireless/ath/ath12k/hal.c
+++ b/drivers/net/wireless/ath/ath12k/hal.c
@@ -1,7 +1,7 @@
 // SPDX-License-Identifier: BSD-3-Clause-Clear
 /*
  * Copyright (c) 2018-2021 The Linux Foundation. All rights reserved.
- * Copyright (c) 2021-2023 Qualcomm Innovation Center, Inc. All rights reserved.
+ * Copyright (c) 2021-2024 Qualcomm Innovation Center, Inc. All rights reserved.
  */
 #include <linux/dma-mapping.h>
 #include "hal_tx.h"
@@ -449,8 +449,8 @@ static u8 *ath12k_hw_qcn9274_rx_desc_mpdu_start_addr2(struct hal_rx_desc *desc)
 
 static bool ath12k_hw_qcn9274_rx_desc_is_da_mcbc(struct hal_rx_desc *desc)
 {
-	return __le16_to_cpu(desc->u.qcn9274.msdu_end.info5) &
-	       RX_MSDU_END_INFO5_DA_IS_MCBC;
+	return __le32_to_cpu(desc->u.qcn9274.mpdu_start.info6) &
+	       RX_MPDU_START_INFO6_MCAST_BCAST;
 }
 
 static void ath12k_hw_qcn9274_rx_desc_get_dot11_hdr(struct hal_rx_desc *desc,




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux