1. 19 11月, 2009 1 次提交
  2. 14 11月, 2009 2 次提交
  3. 12 11月, 2009 4 次提交
  4. 14 8月, 2009 1 次提交
  5. 21 5月, 2009 1 次提交
    • J
      mac80211: cancel/restart all timers across suspend/resume · 5bb644a0
      Johannes Berg 提交于
      We forgot to cancel all timers in mac80211 when suspending.
      In particular we forgot to deal with some things that can
      cause hardware reconfiguration -- while it is down.
      
      While at it we go ahead and add a warning in ieee80211_sta_work()
      if its run while the suspend->resume cycle is in effect. This
      should not happen and if it does it would indicate there is
      a bug lurking in either mac80211 or mac80211 drivers.
      
      With this now wpa_supplicant doesn't blink when I go to suspend
      and resume where as before there where issues with some timers
      running during the suspend->resume cycle. This caused a lot of
      incorrect assumptions and would at times bring back the device
      in an incoherent, but mostly recoverable, state.
      Signed-off-by: NLuis R. Rodriguez <lrodriguez@atheros.com>
      Signed-off-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      5bb644a0
  6. 30 1月, 2009 3 次提交
  7. 13 1月, 2009 1 次提交
  8. 28 10月, 2008 1 次提交
  9. 16 9月, 2008 3 次提交
  10. 12 9月, 2008 2 次提交
  11. 23 8月, 2008 2 次提交
  12. 15 5月, 2008 1 次提交
    • J
      mac80211: proper STA info locking · 07346f81
      Johannes Berg 提交于
      As discussed earlier, we can unify locking in struct sta_info
      and use just a single spinlock protecting all members of the
      structure that need protection. Many don't, but one of the
      especially bad ones is the 'flags' member that can currently
      be clobbered when RX and TX is being processed on different
      CPUs at the same time.
      
      Because having four spinlocks for different, mostly exclusive
      parts of a single structure is overkill, this patch also kills
      the ampdu and mesh plink spinlocks and uses just a single one
      for everything. Because none of the spinlocks are nested, this
      is safe.
      
      It remains to be seen whether or not we should make the sta
      flags use atomic bit operations instead, for now though this
      is a safe thing and using atomic operations instead will be
      very simple using the new static inline functions this patch
      introduces for accessing sta->flags.
      
      Since spin_lock_bh() is used with this lock, there shouldn't
      be any contention even if aggregation is enabled at around the
      same time as both requires frame transmission/reception which
      is in a bh context.
      Signed-off-by: NJohannes Berg <johannes@sipsolutions.net>
      Cc: Tomas Winkler <tomasw@gmail.com>
      Cc: Ron Rindjunsky <ron.rindjunsky@intel.com>
      Cc: Luis Carlos Cobo <luisca@cozybit.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      07346f81
  13. 09 4月, 2008 2 次提交
  14. 02 4月, 2008 1 次提交
  15. 07 3月, 2008 10 次提交