1. 05 2月, 2014 6 次提交
  2. 07 1月, 2014 1 次提交
  3. 31 12月, 2013 1 次提交
  4. 19 12月, 2013 3 次提交
    • K
      mac80211: Add support for QoS mapping · 32db6b54
      Kyeyoon Park 提交于
      Implement set_qos_map() handler for mac80211 to enable QoS mapping
      functionality.
      Signed-off-by: NKyeyoon Park <kyeyoonp@qca.qualcomm.com>
      Signed-off-by: NJouni Malinen <jouni@qca.qualcomm.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      32db6b54
    • J
      mac80211: fix iflist_mtx/mtx locking in radar detection · 34a3740d
      Johannes Berg 提交于
      The scan code creates an iflist_mtx -> mtx locking dependency,
      and a few other places, notably radar detection, were creating
      the opposite dependency, causing lockdep to complain. As scan
      and radar detection are mutually exclusive, the deadlock can't
      really happen in practice, but it's still bad form.
      
      A similar issue exists in the monitor mode code, but this is
      only used by channel-context drivers right now and those have
      to have hardware scan, so that also can't happen.
      
      Still, fix these issues by making some of the channel context
      code require the mtx to be held rather than acquiring it, thus
      allowing the monitor/radar callers to keep the iflist_mtx->mtx
      lock ordering.
      
      While at it, also fix access to the local->scanning variable
      in the radar code, and document that radar_detect_enabled is
      now properly protected by the mtx.
      
      All this would now introduce an ABBA deadlock between the DFS
      work cancelling and local->mtx, so change the locking there a
      bit to not need to use cancel_delayed_work_sync() but be able
      to just use cancel_delayed_work(). The work is also safely
      stopped/removed when the interface is stopped, so no extra
      changes are needed.
      Reported-by: NKalle Valo <kvalo@qca.qualcomm.com>
      Tested-by: NSimon Wunderlich <sw@simonwunderlich.de>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      34a3740d
    • J
      mac80211: remove unnecessary iflist_mtx locking · 6924d013
      Johannes Berg 提交于
      The radar detection code changed a few times, and due to
      the changes some iflist_mtx locking stayed in that isn't
      actually necessary - remove it.
      
      One version of the code needed it because an AP interface's
      VLAN list was changed to use this, but then we moved the
      list handling outside of the chanctx handling and thus the
      locking was no longer needed.
      Tested-by: NSimon Wunderlich <sw@simonwunderlich.de>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      6924d013
  5. 16 12月, 2013 7 次提交
  6. 05 12月, 2013 1 次提交
  7. 02 12月, 2013 5 次提交
  8. 26 11月, 2013 4 次提交
  9. 25 11月, 2013 3 次提交
    • C
      mac80211: fix the mesh channel switch support · 3f718fd8
      Chun-Yeow Yeoh 提交于
      Mesh STA receiving the mesh CSA action frame is not able to trigger
      the mesh channel switch due to the incorrect handling and comparison
      of mesh channel switch parameters element (MCSP)'s TTL. Make sure
      the MCSP's TTL is updated accordingly before calling the
      ieee80211_mesh_process_chnswitch. Also, we update the beacon before
      forwarding the CSA action frame, so MCSP's precedence value and
      initiator flag need to be updated prior to this.
      Signed-off-by: NChun-Yeow Yeoh <yeohchunyeow@gmail.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      3f718fd8
    • J
      mac80211: fix for mesh beacon update on powersave · 6c751ef8
      Javier Lopez 提交于
      Mesh beacon was not being rebuild after user triggered a mesh
      powersave change.
      
      To solve this issue use ieee80211_mbss_info_change_notify instead
      of ieee80211_bss_info_change_notify. This helper function forces
      mesh beacon to be rebuild and then notifies the driver about the
      beacon change.
      Signed-off-by: NJavier Lopez <jlopex@cozybit.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      6c751ef8
    • B
      Revert "mac80211: allow disable power save in mesh" · 2d3db210
      Bob Copeland 提交于
      This reverts commit ee1f6681.
      
      The aformentioned commit added a check to allow
      'iw wlan0 set power_save off' to work for mesh interfaces.
      
      However, this is problematic because it also allows
      'iw wlan0 set power_save on', which will crash in short order
      because all of the subsequent code manipulates sdata->u.mgd.
      
      The power-saving states for mesh interfaces can be manipulated
      through the mesh config, e.g:
      'iw wlan0 set mesh_param mesh_power_save=active' (which,
      despite the name, actualy disables power saving since the
      setting refers to the type of sleep the interface undergoes).
      
      Cc: stable@vger.kernel.org
      Fixes: ee1f6681 ("mac80211: allow disable power save in mesh")
      Signed-off-by: NBob Copeland <me@bobcopeland.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      2d3db210
  10. 28 10月, 2013 5 次提交
    • M
      mac80211: fix uninitialized variable · 0951ebb8
      Michal Kazior 提交于
      CSA completion could call in a driver
      bss_info_changed() with a garbled `changed` flag
      leading to all sorts of problems.
      Signed-off-by: NMichal Kazior <michal.kazior@tieto.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      0951ebb8
    • C
      {nl,cfg,mac}80211: implement mesh channel switch userspace API · b8456a14
      Chun-Yeow Yeoh 提交于
      Implement the required procedures for mesh channel switching as defined
      in the IEEE Std 802.11-2012 section 10.9.8.4.3 and also handle the CSA
      and MCSP elements as followed:
       * Add the function for updating the beacon and probe response frames
         with CSA and MCSP elements during the period of switching to the new
         channel. Both CSA and MCSP elements must be included in beacon and
         probe response frames until the intended channel switch time.
       * The ifmsh->csa_settings is set to NULL and the CSA and MCSP elements
         will then be removed from the beacon or probe response frames once the
         new channel is switched to.
      Signed-off-by: NChun-Yeow Yeoh <yeohchunyeow@cozybit.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      b8456a14
    • C
      {nl,cfg,mac}80211: enable the triggering of CSA frame in mesh · c6da674a
      Chun-Yeow Yeoh 提交于
      Allow the triggering of CSA frame using mesh interface. The
      rules are more or less same with IBSS, such as not allowed to
      change between the band and channel width has to be same from
      the previous mode. Also, move the ieee80211_send_action_csa
      to a common space so that it can be re-used by mesh interface.
      Signed-off-by: NChun-Yeow Yeoh <yeohchunyeow@cozybit.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      c6da674a
    • M
      mac80211: fixes for mesh powersave logic · 446075d7
      Marco Porsch 提交于
      This patch fixes errors in the mesh powersave logic which
      cause that remote peers do not get peer power mode change
      notifications and mesh peer service periods (MPSPs) got
      stuck.
      
      When closing a peer link, set the (now invalid) peer-specific
      power mode to 'unknown'.
      
      Avoid overhead when local power mode is unchanged.
      
      Reliably clear MPSP flags on peering status update.
      
      Avoid MPSP flags getting stuck by not requesting a further
      MPSP ownership if we already are an MPSP owner.
      Signed-off-by: NMarco Porsch <marco@cozybit.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      446075d7
    • 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
  11. 03 10月, 2013 1 次提交
  12. 30 9月, 2013 1 次提交
  13. 26 9月, 2013 1 次提交
  14. 12 8月, 2013 1 次提交