Search Linux Wireless

Re: [PATCH] ath10k: fix bug in masking of TID value

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

 



Hi Kalle,

On 06/15/2018 02:58 PM, Kalle Valo wrote:
Erik Stromdahl <erik.stromdahl@xxxxxxxxx> writes:

Although the TID mask is 0xf, the modulus operation does still not
produce identical results as the bitwise and operator.

If the TID is 15, the modulus operation will "convert" it to 0, whereas
the bitwise and will keep it as 15.

Signed-off-by: Erik Stromdahl <erik.stromdahl@xxxxxxxxx>
---
  drivers/net/wireless/ath/ath10k/htt_tx.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/ath/ath10k/htt_tx.c b/drivers/net/wireless/ath/ath10k/htt_tx.c
index 89157c5b5e5f..be5b52aaffa6 100644
--- a/drivers/net/wireless/ath/ath10k/htt_tx.c
+++ b/drivers/net/wireless/ath/ath10k/htt_tx.c
@@ -1056,7 +1056,7 @@ static u8 ath10k_htt_tx_get_tid(struct sk_buff *skb, bool is_eth)
  	if (!is_eth && ieee80211_is_mgmt(hdr->frame_control))
  		return HTT_DATA_TX_EXT_TID_MGMT;
  	else if (cb->flags & ATH10K_SKB_F_QOS)
-		return skb->priority % IEEE80211_QOS_CTL_TID_MASK;
+		return skb->priority & IEEE80211_QOS_CTL_TID_MASK;

I guess you just found this during code review? If yes, I'll add that to
the commit log.

Correct, I kind of stumbled upon it while working with TX bundling for SDIO.

--
Erik



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux