1. 16 12月, 2013 1 次提交
    • J
      mac80211: don't delay station destruction · d34ba216
      Johannes Berg 提交于
      If we can assume that stations are never referenced by the
      driver after sta_state returns (and this is true since the
      previous iwlmvm patch and for all other drivers) then we
      don't need to delay station destruction, and don't need to
      play tricks with rcu_barrier() etc.
      
      This should speed up some scenarios like hostapd shutdown.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      d34ba216
  2. 02 12月, 2013 1 次提交
  3. 26 11月, 2013 4 次提交
  4. 25 11月, 2013 1 次提交
  5. 28 10月, 2013 2 次提交
    • C
      mac80211: refactor the parsing of chan switch ie · c0f17eb9
      Chun-Yeow Yeoh 提交于
      Refactor the channel switch IE parsing to reduce the number
      of function parameters.
      Signed-off-by: NChun-Yeow Yeoh <yeohchunyeow@cozybit.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      c0f17eb9
    • E
      mac80211: implement SMPS for AP · 687da132
      Emmanuel Grumbach 提交于
      When the driver requests to move to STATIC or DYNAMIC SMPS,
      we send an action frame to each associated station and
      reconfigure the channel context / driver.
      Of course, non-MIMO stations are ignored.
      
      The beacon isn't updated. The association response will
      include the original capabilities. Stations that associate
      while in non-OFF SMPS mode will get an action frame right
      after association to inform them about our current state.
      Note that we wait until the end of the EAPOL. Sending an
      action frame before the EAPOL is finished can be an issue
      for a few clients. Clients aren't likely to send EAPOL
      frames in MIMO anyway.
      
      When the SMPS configuration gets more permissive (e.g.
      STATIC -> OFF), we don't wake up stations that are asleep
      We remember that they don't know about the change and send
      the action frame when they wake up.
      
      When the SMPS configuration gets more restrictive (e.g.
      OFF -> STATIC), we set the TIM bit for every sleeping STA.
      uAPSD stations might send MIMO until they poll the action
      frame, but this is for a short period of time.
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      [fix vht streams loop, initialisation]
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      687da132
  6. 17 10月, 2013 1 次提交
    • J
      mac80211: disable WMM with invalid parameters · 095d81ce
      Johannes Berg 提交于
      Some APs (notably a Sitecom WL-153 v1 with firmware 1.45) are sending
      invalid WMM parameters setting AIFSN, ECWmin and ECWmax to zero. The
      spec mandates that the value of AIFSN is at least 2, and some cards
      (e.g. Intel with the iwldvm driver) can't transmit when the invalid
      QoS parameters are actually uploaded to the firmware.
      
      Since there's little chance of being able to guess the values that
      the AP actually meant, disable WMM if such an invalid case is found.
      Since ECWmin/ECWmax are allowed to be zero, only verify AIFSN >= 2
      and ECWmin <= ECWmax.
      Reviewed-by: NEliad Peller <eliad@wizery.com>
      Reported-by: NAntonio Quartulli <antonio@meshcoding.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      095d81ce
  7. 03 10月, 2013 1 次提交
  8. 26 9月, 2013 2 次提交
  9. 23 8月, 2013 1 次提交
  10. 09 8月, 2013 1 次提交
  11. 01 8月, 2013 4 次提交
  12. 16 7月, 2013 2 次提交
  13. 20 6月, 2013 1 次提交
  14. 18 6月, 2013 1 次提交
  15. 13 6月, 2013 1 次提交
  16. 12 6月, 2013 1 次提交
  17. 05 6月, 2013 2 次提交
  18. 04 6月, 2013 2 次提交
  19. 25 5月, 2013 1 次提交
    • J
      cfg80211/mac80211: use cfg80211 wdev mutex in mac80211 · 8d61ffa5
      Johannes Berg 提交于
      Using separate locks in cfg80211 and mac80211 has always
      caused issues, for example having to unlock in places in
      mac80211 to call cfg80211, which even needed a framework
      to make cfg80211 calls after some functions returned etc.
      
      Additionally, I suspect some issues people have reported
      with the cfg80211 state getting confused could be due to
      such issues, when cfg80211 is asking mac80211 to change
      state but mac80211 is in the process of telling cfg80211
      that the state changed (in another way.)
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      8d61ffa5
  20. 17 5月, 2013 6 次提交
  21. 22 4月, 2013 1 次提交
  22. 16 4月, 2013 3 次提交
    • A
      mac80211: remove warning from ieee80211_beacon_loss · 7a7da6ee
      Alexander Bondar 提交于
      Currently, mac80211 assumes that connection monitor offload
      for BSS station implies that the device:
      - sends periodic keep alive packets to associated AP
      - monitors missed beacons
      - actively probes the AP in case of missed beacons
      
      In case of poor connection conditions it expects the function
      ieee80211_connection_loss() to be called by driver. However,
      some devices implement connection monitor offload excluding
      active AP probing.
      
      To allow them to call ieee80211_beacon_loss() cleanly, remove
      the warning there and thus allow them to use mac80211 for the
      AP probing even if connection monitor offload is supported.
      Signed-off-by: NAlexander Bondar <alexander.bondar@intel.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      7a7da6ee
    • J
      mac80211: handle wide bandwidth channel switch · cd64f2a9
      Johannes Berg 提交于
      Parse and react to the wide bandwidth channel switch element
      in beacons/action frames. Finding the element was done in a
      previous patch (it has different positions in beacons/action
      frames), now handle it. If there's something wrong with it
      simply disconnect.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      cd64f2a9
    • J
      mac80211: parse VHT channel switch IEs · b2e506bf
      Johannes Berg 提交于
      VHT introduces multiple IEs that need to be parsed for a
      wide bandwidth channel switch. Two are (currently) needed
      in mac80211:
       * wide bandwidth channel switch element
       * channel switch wrapper element
      
      The former is contained in the latter for beacons and probe
      responses, but not for the spectrum management action frames
      so the IE parser needs a new argument to differentiate them.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      b2e506bf