• Daniel Halperin's avatar
    iwlwifi: fix throughput degradation in aggregation mode · ff27fabe
    Daniel Halperin authored
    The following commit
    
    	commit e4da8c37
    	Author: Johannes Berg <johannes@sipsolutions.net>
    	Date:   Wed Dec 23 13:15:43 2009 +0100
    
    	   mac80211: make off-channel work generic
    
    triggered a bug in iwlwifi where HT parameters would not be correctly set in
    some mac80211 pathways. The aggregation (and possibly other) station flags were
    not being set, which limited the size of aggregation blocks and reduced
    throughput at high rates.
    
    >From Johannes:
    """
    Due to Wey-Yi's patch to use the set-channel command when the channel changes
    while associated, we don't get a full new RXON. Therefore, we don't re-set the
    rxon-station either. However, under some circumstances that apparently have
    gotten more likely mac80211 will first set up the BSS info, then add the
    station and then switch to an HT channel type.
    
    Therefore, the check for "priv->current_ht_config.is_ht" in
    iwl_rxon_add_station() will hit false and not fill in the HT information.
    
    However, that check can just be removed, which is the easiest fix for all this,
    because the HT capa struct is always there, just could possibly have the
    ht_supported member set to false.
    """
    
    A sample good link in my 3x3 network improves by approximately 25% TCP
    throughput. This fixes Bug 2144
    (http://bugzilla.intellinuxwireless.org/show_bug.cgi?id=2144).
    Signed-off-by: default avatarDaniel Halperin <dhalperi@cs.washington.edu>
    Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
    Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
    ff27fabe
iwl-sta.c 36.6 KB