• Dan Halperin's avatar
    iwlwifi: set HT flags after channel in rxon · 5e2f75b8
    Dan Halperin authored
    The HT extension channel settings require priv->staging_rxon.channel to be
    accurate. However, iwl_set_rxon_ht was being called before iwl_set_rxon_channel
    and thus HT40 could be broken unless another call to iwl_mac_config came in.
    
    This problem was recently introduced by "iwlwifi: Fix to set correct ht
    configuration"
    
    The particular setting in which I noticed this was monitor mode:
    
    	iwconfig wlan0 mode monitor
    	ifconfig wlan0 up
    	./iw wlan0 set channel 64 HT40-
    	#./iw wlan0 set channel 64 HT40-
    	tcpdump -i wlan0 -y IEEE802_11_RADIO
    
    would only catch HT40 packets if I issued the IW command twice.
    
    From visual inspection, iwl_set_rxon_channel does not depend on
    iwl_set_rxon_ht, so simply swapping them should be safe and fixes this problem.
    Signed-off-by: default avatarDaniel Halperin <dhalperi@cs.washington.edu>
    Acked-by: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
    Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
    CC: stable@kernel.org
    Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
    5e2f75b8
iwl-core.c 91.7 KB