diff options
author | Johannes Berg <johannes.berg@intel.com> | 2023-02-14 20:08:15 +0100 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2023-02-14 20:09:30 +0100 |
commit | cf08e29db760b144bde51e2444f3430c75763e26 (patch) | |
tree | a196740270ce3ef972f841ba10ba4181f3cf6114 /net | |
parent | wifi: mac80211: Fix for Rx fragmented action frames (diff) | |
download | linux-cf08e29db760b144bde51e2444f3430c75763e26.tar.xz linux-cf08e29db760b144bde51e2444f3430c75763e26.zip |
wifi: mac80211: fix off-by-one link setting
The convention for find_first_bit() is 0-based, while ffs()
is 1-based, so this is now off-by-one. I cannot reproduce the
gcc-9 problem, but since the -1 is now removed, I'm hoping it
will still avoid the original issue.
Reported-by: Alexander Lobakin <alexandr.lobakin@intel.com>
Fixes: 1d8d4af43474 ("wifi: mac80211: avoid u32_encode_bits() warning")
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net')
-rw-r--r-- | net/mac80211/tx.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c index 118648af979c..7699fb410670 100644 --- a/net/mac80211/tx.c +++ b/net/mac80211/tx.c @@ -4434,7 +4434,7 @@ static void ieee80211_mlo_multicast_tx(struct net_device *dev, u32 ctrl_flags = IEEE80211_TX_CTRL_MCAST_MLO_FIRST_TX; if (hweight16(links) == 1) { - ctrl_flags |= u32_encode_bits(find_first_bit(&links, 16) - 1, + ctrl_flags |= u32_encode_bits(__ffs(links), IEEE80211_TX_CTRL_MLO_LINK); __ieee80211_subif_start_xmit(skb, sdata->dev, 0, ctrl_flags, |