mac80211: fix an uninitialized variable warning
Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
		| @@ -172,11 +172,12 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  		for (i = 0; supported; supported >>= 1, i++) { |  		for (i = 0; supported; supported >>= 1, i++) { | ||||||
|  			if (!(supported & 1)) |  			if (!(supported & 1)) | ||||||
|  				continue; |  				continue; | ||||||
| @@ -856,22 +856,26 @@ minstrel_ht_update_stats(struct minstrel | @@ -854,24 +854,27 @@ minstrel_ht_update_stats(struct minstrel | ||||||
|  |  	mi->sample_slow = 0; | ||||||
|  |  	mi->sample_count = 0; | ||||||
|   |   | ||||||
|  	memset(tmp_mcs_tp_rate, 0, sizeof(tmp_mcs_tp_rate)); | -	memset(tmp_mcs_tp_rate, 0, sizeof(tmp_mcs_tp_rate)); | ||||||
|  	memset(tmp_legacy_tp_rate, 0, sizeof(tmp_legacy_tp_rate)); | -	memset(tmp_legacy_tp_rate, 0, sizeof(tmp_legacy_tp_rate)); | ||||||
| + |  | ||||||
|  	if (mi->supported[MINSTREL_CCK_GROUP]) |  	if (mi->supported[MINSTREL_CCK_GROUP]) | ||||||
| -		for (j = 0; j < ARRAY_SIZE(tmp_legacy_tp_rate); j++) | -		for (j = 0; j < ARRAY_SIZE(tmp_legacy_tp_rate); j++) | ||||||
| -			tmp_legacy_tp_rate[j] = MINSTREL_CCK_GROUP * MCS_GROUP_RATES; | -			tmp_legacy_tp_rate[j] = MINSTREL_CCK_GROUP * MCS_GROUP_RATES; | ||||||
| @@ -185,6 +186,8 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
| -		for (j = 0; j < ARRAY_SIZE(tmp_legacy_tp_rate); j++) | -		for (j = 0; j < ARRAY_SIZE(tmp_legacy_tp_rate); j++) | ||||||
| -			tmp_legacy_tp_rate[j] = MINSTREL_OFDM_GROUP * MCS_GROUP_RATES; | -			tmp_legacy_tp_rate[j] = MINSTREL_OFDM_GROUP * MCS_GROUP_RATES; | ||||||
| +		group = MINSTREL_OFDM_GROUP; | +		group = MINSTREL_OFDM_GROUP; | ||||||
|  | +	else | ||||||
|  | +		group = 0; | ||||||
| + | + | ||||||
| +	index = MI_RATE(group, 0); | +	index = MI_RATE(group, 0); | ||||||
| +	for (j = 0; j < ARRAY_SIZE(tmp_legacy_tp_rate); j++) | +	for (j = 0; j < ARRAY_SIZE(tmp_legacy_tp_rate); j++) | ||||||
| @@ -207,7 +210,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	tmp_max_prob_rate = index; |  	tmp_max_prob_rate = index; | ||||||
|  	for (j = 0; j < ARRAY_SIZE(tmp_mcs_tp_rate); j++) |  	for (j = 0; j < ARRAY_SIZE(tmp_mcs_tp_rate); j++) | ||||||
|  		tmp_mcs_tp_rate[j] = index; |  		tmp_mcs_tp_rate[j] = index; | ||||||
| @@ -888,7 +892,7 @@ minstrel_ht_update_stats(struct minstrel | @@ -888,7 +891,7 @@ minstrel_ht_update_stats(struct minstrel | ||||||
|   |   | ||||||
|  		/* (re)Initialize group rate indexes */ |  		/* (re)Initialize group rate indexes */ | ||||||
|  		for(j = 0; j < MAX_THR_RATES; j++) |  		for(j = 0; j < MAX_THR_RATES; j++) | ||||||
| @@ -216,7 +219,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|   |   | ||||||
|  		if (group == MINSTREL_CCK_GROUP && ht_supported) |  		if (group == MINSTREL_CCK_GROUP && ht_supported) | ||||||
|  			tp_rate = tmp_legacy_tp_rate; |  			tp_rate = tmp_legacy_tp_rate; | ||||||
| @@ -897,7 +901,7 @@ minstrel_ht_update_stats(struct minstrel | @@ -897,7 +900,7 @@ minstrel_ht_update_stats(struct minstrel | ||||||
|  			if (!(mi->supported[group] & BIT(i))) |  			if (!(mi->supported[group] & BIT(i))) | ||||||
|  				continue; |  				continue; | ||||||
|   |   | ||||||
| @@ -225,7 +228,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|   |   | ||||||
|  			mrs = &mg->rates[i]; |  			mrs = &mg->rates[i]; | ||||||
|  			mrs->retry_updated = false; |  			mrs->retry_updated = false; | ||||||
| @@ -929,13 +933,13 @@ minstrel_ht_update_stats(struct minstrel | @@ -929,13 +932,13 @@ minstrel_ht_update_stats(struct minstrel | ||||||
|  			continue; |  			continue; | ||||||
|   |   | ||||||
|  		mg = &mi->groups[group]; |  		mg = &mi->groups[group]; | ||||||
| @@ -241,7 +244,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|   |   | ||||||
|  			/* Find max probability rate per group and global */ |  			/* Find max probability rate per group and global */ | ||||||
|  			minstrel_ht_set_best_prob_rate(mi, &tmp_max_prob_rate, |  			minstrel_ht_set_best_prob_rate(mi, &tmp_max_prob_rate, | ||||||
| @@ -1022,7 +1026,7 @@ minstrel_downgrade_rate(struct minstrel_ | @@ -1022,7 +1025,7 @@ minstrel_downgrade_rate(struct minstrel_ | ||||||
|  { |  { | ||||||
|  	int group, orig_group; |  	int group, orig_group; | ||||||
|   |   | ||||||
| @@ -250,7 +253,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	while (group > 0) { |  	while (group > 0) { | ||||||
|  		group--; |  		group--; | ||||||
|   |   | ||||||
| @@ -1206,7 +1210,7 @@ minstrel_calc_retransmit(struct minstrel | @@ -1206,7 +1209,7 @@ minstrel_calc_retransmit(struct minstrel | ||||||
|  	ctime += (t_slot * cw) >> 1; |  	ctime += (t_slot * cw) >> 1; | ||||||
|  	cw = min((cw << 1) | 1, mp->cw_max); |  	cw = min((cw << 1) | 1, mp->cw_max); | ||||||
|   |   | ||||||
| @@ -259,7 +262,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  		overhead = mi->overhead_legacy; |  		overhead = mi->overhead_legacy; | ||||||
|  		overhead_rtscts = mi->overhead_legacy_rtscts; |  		overhead_rtscts = mi->overhead_legacy_rtscts; | ||||||
|  	} else { |  	} else { | ||||||
| @@ -1239,7 +1243,7 @@ static void | @@ -1239,7 +1242,7 @@ static void | ||||||
|  minstrel_ht_set_rate(struct minstrel_priv *mp, struct minstrel_ht_sta *mi, |  minstrel_ht_set_rate(struct minstrel_priv *mp, struct minstrel_ht_sta *mi, | ||||||
|                       struct ieee80211_sta_rates *ratetbl, int offset, int index) |                       struct ieee80211_sta_rates *ratetbl, int offset, int index) | ||||||
|  { |  { | ||||||
| @@ -268,7 +271,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	const struct mcs_group *group = &minstrel_mcs_groups[group_idx]; |  	const struct mcs_group *group = &minstrel_mcs_groups[group_idx]; | ||||||
|  	struct minstrel_rate_stats *mrs; |  	struct minstrel_rate_stats *mrs; | ||||||
|  	u8 idx; |  	u8 idx; | ||||||
| @@ -1259,7 +1263,7 @@ minstrel_ht_set_rate(struct minstrel_pri | @@ -1259,7 +1262,7 @@ minstrel_ht_set_rate(struct minstrel_pri | ||||||
|  		ratetbl->rate[offset].count_rts = mrs->retry_count_rtscts; |  		ratetbl->rate[offset].count_rts = mrs->retry_count_rtscts; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -277,7 +280,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	if (group_idx == MINSTREL_CCK_GROUP) |  	if (group_idx == MINSTREL_CCK_GROUP) | ||||||
|  		idx = mp->cck_rates[index % ARRAY_SIZE(mp->cck_rates)]; |  		idx = mp->cck_rates[index % ARRAY_SIZE(mp->cck_rates)]; | ||||||
|  	else if (group_idx == MINSTREL_OFDM_GROUP) |  	else if (group_idx == MINSTREL_OFDM_GROUP) | ||||||
| @@ -1289,17 +1293,17 @@ minstrel_ht_set_rate(struct minstrel_pri | @@ -1289,17 +1292,17 @@ minstrel_ht_set_rate(struct minstrel_pri | ||||||
|  static inline int |  static inline int | ||||||
|  minstrel_ht_get_prob_avg(struct minstrel_ht_sta *mi, int rate) |  minstrel_ht_get_prob_avg(struct minstrel_ht_sta *mi, int rate) | ||||||
|  { |  { | ||||||
| @@ -299,7 +302,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	unsigned int duration; |  	unsigned int duration; | ||||||
|   |   | ||||||
|  	/* Disable A-MSDU if max_prob_rate is bad */ |  	/* Disable A-MSDU if max_prob_rate is bad */ | ||||||
| @@ -1405,7 +1409,7 @@ minstrel_get_sample_rate(struct minstrel | @@ -1405,7 +1408,7 @@ minstrel_get_sample_rate(struct minstrel | ||||||
|  		return -1; |  		return -1; | ||||||
|   |   | ||||||
|  	mrs = &mg->rates[sample_idx]; |  	mrs = &mg->rates[sample_idx]; | ||||||
| @@ -308,7 +311,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|   |   | ||||||
|  	tp_rate1 = mi->max_tp_rate[0]; |  	tp_rate1 = mi->max_tp_rate[0]; | ||||||
|   |   | ||||||
| @@ -1455,8 +1459,7 @@ minstrel_get_sample_rate(struct minstrel | @@ -1455,8 +1458,7 @@ minstrel_get_sample_rate(struct minstrel | ||||||
|  	 * if the link is working perfectly. |  	 * if the link is working perfectly. | ||||||
|  	 */ |  	 */ | ||||||
|   |   | ||||||
| @@ -318,7 +321,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	if (sample_dur >= minstrel_get_duration(tp_rate2) && |  	if (sample_dur >= minstrel_get_duration(tp_rate2) && | ||||||
|  	    (cur_max_tp_streams - 1 < |  	    (cur_max_tp_streams - 1 < | ||||||
|  	     minstrel_mcs_groups[sample_group].streams || |  	     minstrel_mcs_groups[sample_group].streams || | ||||||
| @@ -1484,7 +1487,7 @@ minstrel_ht_get_rate(void *priv, struct | @@ -1484,7 +1486,7 @@ minstrel_ht_get_rate(void *priv, struct | ||||||
|  	int sample_idx; |  	int sample_idx; | ||||||
|   |   | ||||||
|  	if (!(info->flags & IEEE80211_TX_CTL_AMPDU) && |  	if (!(info->flags & IEEE80211_TX_CTL_AMPDU) && | ||||||
| @@ -327,7 +330,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  		minstrel_aggr_check(sta, txrc->skb); |  		minstrel_aggr_check(sta, txrc->skb); | ||||||
|   |   | ||||||
|  	info->flags |= mi->tx_flags; |  	info->flags |= mi->tx_flags; | ||||||
| @@ -1512,8 +1515,8 @@ minstrel_ht_get_rate(void *priv, struct | @@ -1512,8 +1514,8 @@ minstrel_ht_get_rate(void *priv, struct | ||||||
|  	if (sample_idx < 0) |  	if (sample_idx < 0) | ||||||
|  		return; |  		return; | ||||||
|   |   | ||||||
| @@ -338,7 +341,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|   |   | ||||||
|  	if (sample_group == &minstrel_mcs_groups[MINSTREL_CCK_GROUP] && |  	if (sample_group == &minstrel_mcs_groups[MINSTREL_CCK_GROUP] && | ||||||
|  	    (sample_idx >= 4) != txrc->short_preamble) |  	    (sample_idx >= 4) != txrc->short_preamble) | ||||||
| @@ -1529,7 +1532,7 @@ minstrel_ht_get_rate(void *priv, struct | @@ -1529,7 +1531,7 @@ minstrel_ht_get_rate(void *priv, struct | ||||||
|  		int idx = sample_idx % ARRAY_SIZE(mp->ofdm_rates[0]); |  		int idx = sample_idx % ARRAY_SIZE(mp->ofdm_rates[0]); | ||||||
|  		rate->idx = mp->ofdm_rates[mi->band][idx]; |  		rate->idx = mp->ofdm_rates[mi->band][idx]; | ||||||
|  	} else if (sample_group->flags & IEEE80211_TX_RC_VHT_MCS) { |  	} else if (sample_group->flags & IEEE80211_TX_RC_VHT_MCS) { | ||||||
| @@ -347,7 +350,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  				       sample_group->streams); |  				       sample_group->streams); | ||||||
|  	} else { |  	} else { | ||||||
|  		rate->idx = sample_idx + (sample_group->streams - 1) * 8; |  		rate->idx = sample_idx + (sample_group->streams - 1) * 8; | ||||||
| @@ -1898,8 +1901,8 @@ static u32 minstrel_ht_get_expected_thro | @@ -1898,8 +1900,8 @@ static u32 minstrel_ht_get_expected_thro | ||||||
|  	struct minstrel_ht_sta *mi = priv_sta; |  	struct minstrel_ht_sta *mi = priv_sta; | ||||||
|  	int i, j, prob, tp_avg; |  	int i, j, prob, tp_avg; | ||||||
|   |   | ||||||
|   | |||||||
| @@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  |  | ||||||
| --- a/net/mac80211/rc80211_minstrel_ht.c | --- a/net/mac80211/rc80211_minstrel_ht.c | ||||||
| +++ b/net/mac80211/rc80211_minstrel_ht.c | +++ b/net/mac80211/rc80211_minstrel_ht.c | ||||||
| @@ -1093,6 +1093,16 @@ minstrel_ht_tx_status(void *priv, struct | @@ -1092,6 +1092,16 @@ minstrel_ht_tx_status(void *priv, struct | ||||||
|  		info->status.ampdu_len = 1; |  		info->status.ampdu_len = 1; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -27,7 +27,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	mi->ampdu_packets++; |  	mi->ampdu_packets++; | ||||||
|  	mi->ampdu_len += info->status.ampdu_len; |  	mi->ampdu_len += info->status.ampdu_len; | ||||||
|   |   | ||||||
| @@ -1104,9 +1114,6 @@ minstrel_ht_tx_status(void *priv, struct | @@ -1103,9 +1113,6 @@ minstrel_ht_tx_status(void *priv, struct | ||||||
|  		mi->sample_count--; |  		mi->sample_count--; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -37,7 +37,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	if (mi->sample_mode != MINSTREL_SAMPLE_IDLE) |  	if (mi->sample_mode != MINSTREL_SAMPLE_IDLE) | ||||||
|  		rate_sample = minstrel_get_ratestats(mi, mi->sample_rate); |  		rate_sample = minstrel_get_ratestats(mi, mi->sample_rate); | ||||||
|   |   | ||||||
| @@ -1504,14 +1511,6 @@ minstrel_ht_get_rate(void *priv, struct | @@ -1503,14 +1510,6 @@ minstrel_ht_get_rate(void *priv, struct | ||||||
|  	else |  	else | ||||||
|  		sample_idx = minstrel_get_sample_rate(mp, mi); |  		sample_idx = minstrel_get_sample_rate(mp, mi); | ||||||
|   |   | ||||||
|   | |||||||
| @@ -37,8 +37,8 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
| -	mi->sample_slow = 0; | -	mi->sample_slow = 0; | ||||||
|  	mi->sample_count = 0; |  	mi->sample_count = 0; | ||||||
|   |   | ||||||
|  	memset(tmp_mcs_tp_rate, 0, sizeof(tmp_mcs_tp_rate)); |  	if (mi->supported[MINSTREL_CCK_GROUP]) | ||||||
| @@ -883,6 +879,7 @@ minstrel_ht_update_stats(struct minstrel | @@ -882,6 +878,7 @@ minstrel_ht_update_stats(struct minstrel | ||||||
|  	/* Find best rate sets within all MCS groups*/ |  	/* Find best rate sets within all MCS groups*/ | ||||||
|  	for (group = 0; group < ARRAY_SIZE(minstrel_mcs_groups); group++) { |  	for (group = 0; group < ARRAY_SIZE(minstrel_mcs_groups); group++) { | ||||||
|  		u16 *tp_rate = tmp_mcs_tp_rate; |  		u16 *tp_rate = tmp_mcs_tp_rate; | ||||||
| @@ -46,7 +46,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|   |   | ||||||
|  		mg = &mi->groups[group]; |  		mg = &mi->groups[group]; | ||||||
|  		if (!mi->supported[group]) |  		if (!mi->supported[group]) | ||||||
| @@ -897,7 +894,7 @@ minstrel_ht_update_stats(struct minstrel | @@ -896,7 +893,7 @@ minstrel_ht_update_stats(struct minstrel | ||||||
|  		if (group == MINSTREL_CCK_GROUP && ht_supported) |  		if (group == MINSTREL_CCK_GROUP && ht_supported) | ||||||
|  			tp_rate = tmp_legacy_tp_rate; |  			tp_rate = tmp_legacy_tp_rate; | ||||||
|   |   | ||||||
| @@ -55,7 +55,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  			if (!(mi->supported[group] & BIT(i))) |  			if (!(mi->supported[group] & BIT(i))) | ||||||
|  				continue; |  				continue; | ||||||
|   |   | ||||||
| @@ -906,6 +903,11 @@ minstrel_ht_update_stats(struct minstrel | @@ -905,6 +902,11 @@ minstrel_ht_update_stats(struct minstrel | ||||||
|  			mrs = &mg->rates[i]; |  			mrs = &mg->rates[i]; | ||||||
|  			mrs->retry_updated = false; |  			mrs->retry_updated = false; | ||||||
|  			minstrel_ht_calc_rate_stats(mp, mrs); |  			minstrel_ht_calc_rate_stats(mp, mrs); | ||||||
| @@ -67,7 +67,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  			cur_prob = mrs->prob_avg; |  			cur_prob = mrs->prob_avg; | ||||||
|   |   | ||||||
|  			if (minstrel_ht_get_tp_avg(mi, group, i, cur_prob) == 0) |  			if (minstrel_ht_get_tp_avg(mi, group, i, cur_prob) == 0) | ||||||
| @@ -1470,13 +1472,9 @@ minstrel_get_sample_rate(struct minstrel | @@ -1469,13 +1471,9 @@ minstrel_get_sample_rate(struct minstrel | ||||||
|  	if (sample_dur >= minstrel_get_duration(tp_rate2) && |  	if (sample_dur >= minstrel_get_duration(tp_rate2) && | ||||||
|  	    (cur_max_tp_streams - 1 < |  	    (cur_max_tp_streams - 1 < | ||||||
|  	     minstrel_mcs_groups[sample_group].streams || |  	     minstrel_mcs_groups[sample_group].streams || | ||||||
|   | |||||||
| @@ -474,10 +474,10 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|   |   | ||||||
| -	mi->sample_count = 0; | -	mi->sample_count = 0; | ||||||
| - | - | ||||||
|  	memset(tmp_mcs_tp_rate, 0, sizeof(tmp_mcs_tp_rate)); |  	if (mi->supported[MINSTREL_CCK_GROUP]) | ||||||
|  	memset(tmp_legacy_tp_rate, 0, sizeof(tmp_legacy_tp_rate)); |  		group = MINSTREL_CCK_GROUP; | ||||||
|   |  	else if (mi->supported[MINSTREL_OFDM_GROUP]) | ||||||
| @@ -885,8 +1081,6 @@ minstrel_ht_update_stats(struct minstrel | @@ -884,8 +1080,6 @@ minstrel_ht_update_stats(struct minstrel | ||||||
|  		if (!mi->supported[group]) |  		if (!mi->supported[group]) | ||||||
|  			continue; |  			continue; | ||||||
|   |   | ||||||
| @@ -486,7 +486,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  		/* (re)Initialize group rate indexes */ |  		/* (re)Initialize group rate indexes */ | ||||||
|  		for(j = 0; j < MAX_THR_RATES; j++) |  		for(j = 0; j < MAX_THR_RATES; j++) | ||||||
|  			tmp_group_tp_rate[j] = MI_RATE(group, 0); |  			tmp_group_tp_rate[j] = MI_RATE(group, 0); | ||||||
| @@ -953,9 +1147,7 @@ minstrel_ht_update_stats(struct minstrel | @@ -952,9 +1146,7 @@ minstrel_ht_update_stats(struct minstrel | ||||||
|   |   | ||||||
|  	/* Try to increase robustness of max_prob_rate*/ |  	/* Try to increase robustness of max_prob_rate*/ | ||||||
|  	minstrel_ht_prob_rate_reduce_streams(mi); |  	minstrel_ht_prob_rate_reduce_streams(mi); | ||||||
| @@ -497,7 +497,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|   |   | ||||||
|  	if (sample) |  	if (sample) | ||||||
|  		minstrel_ht_rate_sample_switch(mp, mi); |  		minstrel_ht_rate_sample_switch(mp, mi); | ||||||
| @@ -972,6 +1164,7 @@ minstrel_ht_update_stats(struct minstrel | @@ -971,6 +1163,7 @@ minstrel_ht_update_stats(struct minstrel | ||||||
|   |   | ||||||
|  	/* Reset update timer */ |  	/* Reset update timer */ | ||||||
|  	mi->last_stats_update = jiffies; |  	mi->last_stats_update = jiffies; | ||||||
| @@ -505,7 +505,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  } |  } | ||||||
|   |   | ||||||
|  static bool |  static bool | ||||||
| @@ -1002,28 +1195,6 @@ minstrel_ht_txstat_valid(struct minstrel | @@ -1001,28 +1194,6 @@ minstrel_ht_txstat_valid(struct minstrel | ||||||
|  } |  } | ||||||
|   |   | ||||||
|  static void |  static void | ||||||
| @@ -534,7 +534,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  minstrel_downgrade_rate(struct minstrel_ht_sta *mi, u16 *idx, bool primary) |  minstrel_downgrade_rate(struct minstrel_ht_sta *mi, u16 *idx, bool primary) | ||||||
|  { |  { | ||||||
|  	int group, orig_group; |  	int group, orig_group; | ||||||
| @@ -1108,14 +1279,6 @@ minstrel_ht_tx_status(void *priv, struct | @@ -1107,14 +1278,6 @@ minstrel_ht_tx_status(void *priv, struct | ||||||
|  	mi->ampdu_packets++; |  	mi->ampdu_packets++; | ||||||
|  	mi->ampdu_len += info->status.ampdu_len; |  	mi->ampdu_len += info->status.ampdu_len; | ||||||
|   |   | ||||||
| @@ -549,7 +549,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	if (mi->sample_mode != MINSTREL_SAMPLE_IDLE) |  	if (mi->sample_mode != MINSTREL_SAMPLE_IDLE) | ||||||
|  		rate_sample = minstrel_get_ratestats(mi, mi->sample_rate); |  		rate_sample = minstrel_get_ratestats(mi, mi->sample_rate); | ||||||
|   |   | ||||||
| @@ -1387,97 +1550,20 @@ minstrel_ht_update_rates(struct minstrel | @@ -1386,97 +1549,20 @@ minstrel_ht_update_rates(struct minstrel | ||||||
|  	rate_control_set_rates(mp->hw, mi->sta, rates); |  	rate_control_set_rates(mp->hw, mi->sta, rates); | ||||||
|  } |  } | ||||||
|   |   | ||||||
| @@ -656,7 +656,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  } |  } | ||||||
|   |   | ||||||
|  static void |  static void | ||||||
| @@ -1489,7 +1575,7 @@ minstrel_ht_get_rate(void *priv, struct | @@ -1488,7 +1574,7 @@ minstrel_ht_get_rate(void *priv, struct | ||||||
|  	struct ieee80211_tx_rate *rate = &info->status.rates[0]; |  	struct ieee80211_tx_rate *rate = &info->status.rates[0]; | ||||||
|  	struct minstrel_ht_sta *mi = priv_sta; |  	struct minstrel_ht_sta *mi = priv_sta; | ||||||
|  	struct minstrel_priv *mp = priv; |  	struct minstrel_priv *mp = priv; | ||||||
| @@ -665,7 +665,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|   |   | ||||||
|  	if (!(info->flags & IEEE80211_TX_CTL_AMPDU) && |  	if (!(info->flags & IEEE80211_TX_CTL_AMPDU) && | ||||||
|  	    !minstrel_ht_is_legacy_group(MI_RATE_GROUP(mi->max_prob_rate))) |  	    !minstrel_ht_is_legacy_group(MI_RATE_GROUP(mi->max_prob_rate))) | ||||||
| @@ -1505,11 +1591,19 @@ minstrel_ht_get_rate(void *priv, struct | @@ -1504,11 +1590,19 @@ minstrel_ht_get_rate(void *priv, struct | ||||||
|  	/* Don't use EAPOL frames for sampling on non-mrr hw */ |  	/* Don't use EAPOL frames for sampling on non-mrr hw */ | ||||||
|  	if (mp->hw->max_rates == 1 && |  	if (mp->hw->max_rates == 1 && | ||||||
|  	    (info->control.flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO)) |  	    (info->control.flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO)) | ||||||
| @@ -689,7 +689,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  		return; |  		return; | ||||||
|   |   | ||||||
|  	sample_group = &minstrel_mcs_groups[MI_RATE_GROUP(sample_idx)]; |  	sample_group = &minstrel_mcs_groups[MI_RATE_GROUP(sample_idx)]; | ||||||
| @@ -1630,16 +1724,6 @@ minstrel_ht_update_caps(void *priv, stru | @@ -1629,16 +1723,6 @@ minstrel_ht_update_caps(void *priv, stru | ||||||
|   |   | ||||||
|  	mi->avg_ampdu_len = MINSTREL_FRAC(1, 1); |  	mi->avg_ampdu_len = MINSTREL_FRAC(1, 1); | ||||||
|   |   | ||||||
|   | |||||||
| @@ -70,7 +70,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	if (mi->ampdu_packets > 0) { |  	if (mi->ampdu_packets > 0) { | ||||||
|  		if (!ieee80211_hw_check(mp->hw, TX_STATUS_NO_AMPDU_LEN)) |  		if (!ieee80211_hw_check(mp->hw, TX_STATUS_NO_AMPDU_LEN)) | ||||||
|  			mi->avg_ampdu_len = minstrel_ewma(mi->avg_ampdu_len, |  			mi->avg_ampdu_len = minstrel_ewma(mi->avg_ampdu_len, | ||||||
| @@ -1149,16 +1115,12 @@ minstrel_ht_update_stats(struct minstrel | @@ -1148,16 +1114,12 @@ minstrel_ht_update_stats(struct minstrel | ||||||
|  	minstrel_ht_prob_rate_reduce_streams(mi); |  	minstrel_ht_prob_rate_reduce_streams(mi); | ||||||
|  	minstrel_ht_refill_sample_rates(mi); |  	minstrel_ht_refill_sample_rates(mi); | ||||||
|   |   | ||||||
| @@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	} |  	} | ||||||
|  #endif |  #endif | ||||||
|   |   | ||||||
| @@ -1248,11 +1210,10 @@ minstrel_ht_tx_status(void *priv, struct | @@ -1247,11 +1209,10 @@ minstrel_ht_tx_status(void *priv, struct | ||||||
|  	struct ieee80211_tx_info *info = st->info; |  	struct ieee80211_tx_info *info = st->info; | ||||||
|  	struct minstrel_ht_sta *mi = priv_sta; |  	struct minstrel_ht_sta *mi = priv_sta; | ||||||
|  	struct ieee80211_tx_rate *ar = info->status.rates; |  	struct ieee80211_tx_rate *ar = info->status.rates; | ||||||
| @@ -100,7 +100,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	int i; |  	int i; | ||||||
|   |   | ||||||
|  	/* This packet was aggregated but doesn't carry status info */ |  	/* This packet was aggregated but doesn't carry status info */ | ||||||
| @@ -1279,49 +1240,18 @@ minstrel_ht_tx_status(void *priv, struct | @@ -1278,49 +1239,18 @@ minstrel_ht_tx_status(void *priv, struct | ||||||
|  	mi->ampdu_packets++; |  	mi->ampdu_packets++; | ||||||
|  	mi->ampdu_len += info->status.ampdu_len; |  	mi->ampdu_len += info->status.ampdu_len; | ||||||
|   |   | ||||||
| @@ -150,7 +150,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	if (mp->hw->max_rates > 1) { |  	if (mp->hw->max_rates > 1) { | ||||||
|  		/* |  		/* | ||||||
|  		 * check for sudden death of spatial multiplexing, |  		 * check for sudden death of spatial multiplexing, | ||||||
| @@ -1344,7 +1274,7 @@ minstrel_ht_tx_status(void *priv, struct | @@ -1343,7 +1273,7 @@ minstrel_ht_tx_status(void *priv, struct | ||||||
|   |   | ||||||
|  	if (time_after(jiffies, mi->last_stats_update + update_interval)) { |  	if (time_after(jiffies, mi->last_stats_update + update_interval)) { | ||||||
|  		update = true; |  		update = true; | ||||||
| @@ -159,7 +159,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	} |  	} | ||||||
|   |   | ||||||
|  	if (update) |  	if (update) | ||||||
| @@ -1523,18 +1453,14 @@ static void | @@ -1522,18 +1452,14 @@ static void | ||||||
|  minstrel_ht_update_rates(struct minstrel_priv *mp, struct minstrel_ht_sta *mi) |  minstrel_ht_update_rates(struct minstrel_priv *mp, struct minstrel_ht_sta *mi) | ||||||
|  { |  { | ||||||
|  	struct ieee80211_sta_rates *rates; |  	struct ieee80211_sta_rates *rates; | ||||||
| @@ -179,7 +179,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|   |   | ||||||
|  	if (mp->hw->max_rates >= 3) { |  	if (mp->hw->max_rates >= 3) { | ||||||
|  		/* At least 3 tx rates supported, use max_tp_rate[1] next */ |  		/* At least 3 tx rates supported, use max_tp_rate[1] next */ | ||||||
| @@ -1593,11 +1519,6 @@ minstrel_ht_get_rate(void *priv, struct | @@ -1592,11 +1518,6 @@ minstrel_ht_get_rate(void *priv, struct | ||||||
|  	    (info->control.flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO)) |  	    (info->control.flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO)) | ||||||
|  		return; |  		return; | ||||||
|   |   | ||||||
| @@ -191,7 +191,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	if (time_is_before_jiffies(mi->sample_time)) |  	if (time_is_before_jiffies(mi->sample_time)) | ||||||
|  		return; |  		return; | ||||||
|   |   | ||||||
| @@ -1811,7 +1732,7 @@ minstrel_ht_update_caps(void *priv, stru | @@ -1810,7 +1731,7 @@ minstrel_ht_update_caps(void *priv, stru | ||||||
|  	minstrel_ht_update_ofdm(mp, mi, sband, sta); |  	minstrel_ht_update_ofdm(mp, mi, sband, sta); | ||||||
|   |   | ||||||
|  	/* create an initial rate table with the lowest supported rates */ |  	/* create an initial rate table with the lowest supported rates */ | ||||||
| @@ -200,7 +200,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	minstrel_ht_update_rates(mp, mi); |  	minstrel_ht_update_rates(mp, mi); | ||||||
|  } |  } | ||||||
|   |   | ||||||
| @@ -1927,8 +1848,6 @@ minstrel_ht_alloc(struct ieee80211_hw *h | @@ -1926,8 +1847,6 @@ minstrel_ht_alloc(struct ieee80211_hw *h | ||||||
|  	if (!mp) |  	if (!mp) | ||||||
|  		return NULL; |  		return NULL; | ||||||
|   |   | ||||||
| @@ -209,7 +209,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	/* contention window settings |  	/* contention window settings | ||||||
|  	 * Just an approximation. Using the per-queue values would complicate |  	 * Just an approximation. Using the per-queue values would complicate | ||||||
|  	 * the calculations and is probably unnecessary */ |  	 * the calculations and is probably unnecessary */ | ||||||
| @@ -1948,7 +1867,7 @@ minstrel_ht_alloc(struct ieee80211_hw *h | @@ -1947,7 +1866,7 @@ minstrel_ht_alloc(struct ieee80211_hw *h | ||||||
|  		mp->has_mrr = true; |  		mp->has_mrr = true; | ||||||
|   |   | ||||||
|  	mp->hw = hw; |  	mp->hw = hw; | ||||||
| @@ -218,7 +218,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|   |   | ||||||
|  	minstrel_ht_init_cck_rates(mp); |  	minstrel_ht_init_cck_rates(mp); | ||||||
|  	for (i = 0; i < ARRAY_SIZE(mp->hw->wiphy->bands); i++) |  	for (i = 0; i < ARRAY_SIZE(mp->hw->wiphy->bands); i++) | ||||||
| @@ -1966,8 +1885,6 @@ static void minstrel_ht_add_debugfs(stru | @@ -1965,8 +1884,6 @@ static void minstrel_ht_add_debugfs(stru | ||||||
|  	mp->fixed_rate_idx = (u32) -1; |  	mp->fixed_rate_idx = (u32) -1; | ||||||
|  	debugfs_create_u32("fixed_rate_idx", S_IRUGO | S_IWUGO, debugfsdir, |  	debugfs_create_u32("fixed_rate_idx", S_IRUGO | S_IWUGO, debugfsdir, | ||||||
|  			   &mp->fixed_rate_idx); |  			   &mp->fixed_rate_idx); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Felix Fietkau
					Felix Fietkau