diff options
author | Felix Fietkau <nbd@nbd.name> | 2016-06-22 16:08:09 +0200 |
---|---|---|
committer | Zoltan HERPAI <wigyori@uid0.hu> | 2016-06-22 16:08:09 +0200 |
commit | 44713c22f8513d21aef3c4148e412d5a042f3b28 (patch) | |
tree | 403178e10c27bb080da13225b6a7a5993cc9199c /package/kernel/mac80211/patches/317-mac80211-minstrel_ht-fix-out-of-bound-in-minstrel_ht.patch | |
parent | 35bfff92f8acfae83d75d4eb58ac6f7f262d2786 (diff) | |
download | master-187ad058-44713c22f8513d21aef3c4148e412d5a042f3b28.tar.gz master-187ad058-44713c22f8513d21aef3c4148e412d5a042f3b28.tar.bz2 master-187ad058-44713c22f8513d21aef3c4148e412d5a042f3b28.zip |
mac80211: update to wireless-testing 2016-05-12
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Diffstat (limited to 'package/kernel/mac80211/patches/317-mac80211-minstrel_ht-fix-out-of-bound-in-minstrel_ht.patch')
-rw-r--r-- | package/kernel/mac80211/patches/317-mac80211-minstrel_ht-fix-out-of-bound-in-minstrel_ht.patch | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/package/kernel/mac80211/patches/317-mac80211-minstrel_ht-fix-out-of-bound-in-minstrel_ht.patch b/package/kernel/mac80211/patches/317-mac80211-minstrel_ht-fix-out-of-bound-in-minstrel_ht.patch deleted file mode 100644 index 5bf53b918c..0000000000 --- a/package/kernel/mac80211/patches/317-mac80211-minstrel_ht-fix-out-of-bound-in-minstrel_ht.patch +++ /dev/null @@ -1,45 +0,0 @@ -From: Konstantin Khlebnikov <koct9i@gmail.com> -Date: Fri, 29 Jan 2016 11:35:12 +0300 -Subject: [PATCH] mac80211: minstrel_ht: fix out-of-bound in - minstrel_ht_set_best_prob_rate - -Patch fixes this splat - -BUG: KASAN: slab-out-of-bounds in minstrel_ht_update_stats.isra.7+0x6e1/0x9e0 -[mac80211] at addr ffff8800cee640f4 Read of size 4 by task swapper/3/0 - -Signed-off-by: Konstantin Khlebnikov <koct9i@gmail.com> -Link: http://lkml.kernel.org/r/CALYGNiNyJhSaVnE35qS6UCGaSb2Dx1_i5HcRavuOX14oTz2P+w@mail.gmail.com ---- - ---- a/net/mac80211/rc80211_minstrel_ht.c -+++ b/net/mac80211/rc80211_minstrel_ht.c -@@ -414,15 +414,16 @@ minstrel_ht_set_best_prob_rate(struct mi - (max_tp_group != MINSTREL_CCK_GROUP)) - return; - -+ max_gpr_group = mg->max_group_prob_rate / MCS_GROUP_RATES; -+ max_gpr_idx = mg->max_group_prob_rate % MCS_GROUP_RATES; -+ max_gpr_prob = mi->groups[max_gpr_group].rates[max_gpr_idx].prob_ewma; -+ - if (mrs->prob_ewma > MINSTREL_FRAC(75, 100)) { - cur_tp_avg = minstrel_ht_get_tp_avg(mi, cur_group, cur_idx, - mrs->prob_ewma); - if (cur_tp_avg > tmp_tp_avg) - mi->max_prob_rate = index; - -- max_gpr_group = mg->max_group_prob_rate / MCS_GROUP_RATES; -- max_gpr_idx = mg->max_group_prob_rate % MCS_GROUP_RATES; -- max_gpr_prob = mi->groups[max_gpr_group].rates[max_gpr_idx].prob_ewma; - max_gpr_tp_avg = minstrel_ht_get_tp_avg(mi, max_gpr_group, - max_gpr_idx, - max_gpr_prob); -@@ -431,7 +432,7 @@ minstrel_ht_set_best_prob_rate(struct mi - } else { - if (mrs->prob_ewma > tmp_prob) - mi->max_prob_rate = index; -- if (mrs->prob_ewma > mg->rates[mg->max_group_prob_rate].prob_ewma) -+ if (mrs->prob_ewma > max_gpr_prob) - mg->max_group_prob_rate = index; - } - } |