diff options
author | Colin Ian King <colin.king@canonical.com> | 2019-08-22 15:20:34 +0300 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2019-08-22 22:58:18 +0300 |
commit | b26af9304467d8e7844397e702b51a4bdc74bedd (patch) | |
tree | 1ddae8810ccb994d69d581c6fb9e6f456a9b03c0 /net | |
parent | c76c992525245ec1c7b6738bf887c42099abab02 (diff) | |
download | linux-b26af9304467d8e7844397e702b51a4bdc74bedd.tar.xz |
mac80211: minstrel_ht: fix infinite loop because supported is not being shifted
Currently the for-loop will spin forever if variable supported is
non-zero because supported is never changed. Fix this by adding in
the missing right shift of supported.
Addresses-Coverity: ("Infinite loop")
Fixes: 48cb39522a9d ("mac80211: minstrel_ht: improve rate probing for devices with static fallback")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Link: https://lore.kernel.org/r/20190822122034.28664-1-colin.king@canonical.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net')
-rw-r--r-- | net/mac80211/rc80211_minstrel_ht.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/mac80211/rc80211_minstrel_ht.c b/net/mac80211/rc80211_minstrel_ht.c index a01168514840..0ef2633349b5 100644 --- a/net/mac80211/rc80211_minstrel_ht.c +++ b/net/mac80211/rc80211_minstrel_ht.c @@ -634,7 +634,7 @@ minstrel_ht_rate_sample_switch(struct minstrel_priv *mp, u16 supported = mi->supported[g_idx]; supported >>= mi->max_tp_rate[0] % MCS_GROUP_RATES; - for (i = 0; supported; i++) { + for (i = 0; supported; supported >>= 1, i++) { if (!(supported & 1)) continue; |