iwlwifi: mvm: rs: fix handling of column switch error
If we can't switch to a column because no rates are supported in that column this led to a state where the search cycle got stuck and never ended. This in turn also led to aggregation not being turned on. Fix this by marking a column as visited if we can't switch to it. Reported-and-tested-by: Karl Beldan <karl.beldan@gmail.com> Signed-off-by: Eyal Shapira <eyal@wizery.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
This commit is contained in:
parent
91b0d11984
commit
75d3e2d693
1 changed files with 2 additions and 1 deletions
|
@ -1591,6 +1591,8 @@ static int rs_switch_to_column(struct iwl_mvm *mvm,
|
||||||
search_tbl->column = col_id;
|
search_tbl->column = col_id;
|
||||||
rs_set_expected_tpt_table(lq_sta, search_tbl);
|
rs_set_expected_tpt_table(lq_sta, search_tbl);
|
||||||
|
|
||||||
|
lq_sta->visited_columns |= BIT(col_id);
|
||||||
|
|
||||||
/* Get the best matching rate if we're changing modes. e.g.
|
/* Get the best matching rate if we're changing modes. e.g.
|
||||||
* SISO->MIMO, LEGACY->SISO, MIMO->SISO
|
* SISO->MIMO, LEGACY->SISO, MIMO->SISO
|
||||||
*/
|
*/
|
||||||
|
@ -1614,7 +1616,6 @@ static int rs_switch_to_column(struct iwl_mvm *mvm,
|
||||||
IWL_DEBUG_RATE(mvm, "Switched to column %d: Index %d\n",
|
IWL_DEBUG_RATE(mvm, "Switched to column %d: Index %d\n",
|
||||||
col_id, rate->index);
|
col_id, rate->index);
|
||||||
|
|
||||||
lq_sta->visited_columns |= BIT(col_id);
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
err:
|
err:
|
||||||
|
|
Loading…
Add table
Reference in a new issue