]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
wifi: ath12k: set RX_FLAG_SKIP_MONITOR in WBM error path
authorP Praneesh <praneesh.p@oss.qualcomm.com>
Thu, 5 Jun 2025 05:01:35 +0000 (10:31 +0530)
committerJeff Johnson <jeff.johnson@oss.qualcomm.com>
Thu, 10 Jul 2025 14:29:44 +0000 (07:29 -0700)
Packets delivered to mac80211 from the WBM error path currently do not
have the RX_FLAG_SKIP_MONITOR flag set in status->flag. As a result,
mac80211 performs unnecessary monitor mode checks on each packet, even
though these packets are not intended for monitor mode processing.
In regular rx path, this flag is explicitly set to avoid such overhead.
Align the WBM error path behavior by setting RX_FLAG_SKIP_MONITOR to
prevent redundant per-packet checks in mac80211.

Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.3.1-00173-QCAHKSWPL_SILICONZ-1
Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3

Signed-off-by: P Praneesh <praneesh.p@oss.qualcomm.com>
Reviewed-by: Vasanthakumar Thiagarajan <vasanthakumar.thiagarajan@oss.qualcomm.com>
Link: https://patch.msgid.link/20250605050135.1802902-1-praneesh.p@oss.qualcomm.com
Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
drivers/net/wireless/ath/ath12k/dp_rx.c

index ed325aa6322d53636714de574d3c786687b9e6f8..c95568f0e5d8b216d7756578d470b50124091b3f 100644 (file)
@@ -4022,6 +4022,8 @@ static void ath12k_dp_rx_wbm_err(struct ath12k *ar,
                return;
        }
 
+       rx_info.rx_status->flag |= RX_FLAG_SKIP_MONITOR;
+
        ath12k_dp_rx_deliver_msdu(ar, napi, msdu, &rx_info);
 }