mirror of https://gitee.com/openkylin/linux.git
iwlwifi: don't check monitor for scanning
Monitor mode operation need not (and probably should not) affect scanning this way since real monitoring can not properly happen while scanning anyway. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
This commit is contained in:
parent
b2e8690d5a
commit
fa58b6a3b3
|
@ -1458,8 +1458,6 @@ void iwlagn_request_scan(struct iwl_priv *priv)
|
||||||
|
|
||||||
}
|
}
|
||||||
scan->tx_cmd.len = cpu_to_le16(cmd_len);
|
scan->tx_cmd.len = cpu_to_le16(cmd_len);
|
||||||
if (iwl_is_monitor_mode(priv))
|
|
||||||
scan->filter_flags = RXON_FILTER_PROMISC_MSK;
|
|
||||||
|
|
||||||
scan->filter_flags |= (RXON_FILTER_ACCEPT_GRP_MSK |
|
scan->filter_flags |= (RXON_FILTER_ACCEPT_GRP_MSK |
|
||||||
RXON_FILTER_BCON_AWARE_MSK);
|
RXON_FILTER_BCON_AWARE_MSK);
|
||||||
|
|
|
@ -834,11 +834,10 @@ static u8 iwl_count_chain_bitmap(u32 chain_bitmap)
|
||||||
* never called for monitor mode. The only way mac80211 informs us about
|
* never called for monitor mode. The only way mac80211 informs us about
|
||||||
* monitor mode is through configuring filters (call to configure_filter).
|
* monitor mode is through configuring filters (call to configure_filter).
|
||||||
*/
|
*/
|
||||||
bool iwl_is_monitor_mode(struct iwl_priv *priv)
|
static bool iwl_is_monitor_mode(struct iwl_priv *priv)
|
||||||
{
|
{
|
||||||
return !!(priv->staging_rxon.filter_flags & RXON_FILTER_PROMISC_MSK);
|
return !!(priv->staging_rxon.filter_flags & RXON_FILTER_PROMISC_MSK);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(iwl_is_monitor_mode);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* iwl_set_rxon_chain - Set up Rx chain usage in "staging" RXON image
|
* iwl_set_rxon_chain - Set up Rx chain usage in "staging" RXON image
|
||||||
|
|
|
@ -351,7 +351,6 @@ void iwl_configure_filter(struct ieee80211_hw *hw,
|
||||||
unsigned int changed_flags,
|
unsigned int changed_flags,
|
||||||
unsigned int *total_flags, u64 multicast);
|
unsigned int *total_flags, u64 multicast);
|
||||||
int iwl_set_hw_params(struct iwl_priv *priv);
|
int iwl_set_hw_params(struct iwl_priv *priv);
|
||||||
bool iwl_is_monitor_mode(struct iwl_priv *priv);
|
|
||||||
void iwl_post_associate(struct iwl_priv *priv);
|
void iwl_post_associate(struct iwl_priv *priv);
|
||||||
void iwl_bss_info_changed(struct ieee80211_hw *hw,
|
void iwl_bss_info_changed(struct ieee80211_hw *hw,
|
||||||
struct ieee80211_vif *vif,
|
struct ieee80211_vif *vif,
|
||||||
|
|
|
@ -2963,9 +2963,6 @@ void iwl3945_request_scan(struct iwl_priv *priv)
|
||||||
/* select Rx antennas */
|
/* select Rx antennas */
|
||||||
scan->flags |= iwl3945_get_antenna_flags(priv);
|
scan->flags |= iwl3945_get_antenna_flags(priv);
|
||||||
|
|
||||||
if (iwl_is_monitor_mode(priv))
|
|
||||||
scan->filter_flags = RXON_FILTER_PROMISC_MSK;
|
|
||||||
|
|
||||||
scan->channel_count =
|
scan->channel_count =
|
||||||
iwl3945_get_channels_for_scan(priv, band, is_active, n_probes,
|
iwl3945_get_channels_for_scan(priv, band, is_active, n_probes,
|
||||||
(void *)&scan->data[le16_to_cpu(scan->tx_cmd.len)]);
|
(void *)&scan->data[le16_to_cpu(scan->tx_cmd.len)]);
|
||||||
|
|
Loading…
Reference in New Issue