Message ID | 20241219190845.605116-1-quic_msinada@quicinc.com (mailing list archive) |
---|---|
State | Under Review |
Delegated to: | Jeff Johnson |
Headers | show |
Series | wifi: ath12k: set flag for mgmt no-ack frames in Tx completion | expand |
Muna Sinada <quic_msinada@quicinc.com> writes: > From: Ramya Gnanasekar <quic_rgnanase@quicinc.com> > > IEEE80211_TX_STAT_NOACK_TRANSMITTED flag signifies that frame was > successfully transmitted without any errors when no-ack is requested. > > In WMI Tx management completion path, driver is not setting > IEEE80211_TX_STAT_NOACK_TRANSMITTED flag for the frames with > IEEE80211_TX_CTL_NO_ACK. Without this flag, the management frame > statistics will not track such frames. > > Add IEEE80211_TX_STAT_NOACK_TRANSMITTED flag as part of the flags in > skb transmit information when WMI is processing Tx completion for > management frames. > > Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 > > Signed-off-by: Ramya Gnanasekar <quic_rgnanase@quicinc.com> > Signed-off-by: Muna Sinada <quic_msinada@quicinc.com> Acked-by: Kalle Valo <kvalo@kernel.org>
diff --git a/drivers/net/wireless/ath/ath12k/wmi.c b/drivers/net/wireless/ath/ath12k/wmi.c index 562b0615ed06..a098d4303a63 100644 --- a/drivers/net/wireless/ath/ath12k/wmi.c +++ b/drivers/net/wireless/ath/ath12k/wmi.c @@ -5362,6 +5362,9 @@ static int wmi_process_mgmt_tx_comp(struct ath12k *ar, u32 desc_id, if ((!(info->flags & IEEE80211_TX_CTL_NO_ACK)) && !status) info->flags |= IEEE80211_TX_STAT_ACK; + if ((info->flags & IEEE80211_TX_CTL_NO_ACK) && !status) + info->flags |= IEEE80211_TX_STAT_NOACK_TRANSMITTED; + ieee80211_tx_status_irqsafe(ath12k_ar_to_hw(ar), msdu); num_mgmt = atomic_dec_if_positive(&ar->num_pending_mgmt_tx);