1. 29 Jan, 2009 2 commits
  2. 12 Jan, 2009 1 commit
  3. 27 Oct, 2008 1 commit
  4. 15 Sep, 2008 3 commits
  5. 11 Sep, 2008 2 commits
  6. 22 Aug, 2008 2 commits
  7. 14 May, 2008 1 commit
    • Johannes Berg's avatar
      mac80211: proper STA info locking · 07346f81
      Johannes Berg authored
      
      
      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: default avatarJohannes 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: default avatarJohn W. Linville <linville@tuxdriver.com>
      07346f81
  8. 08 Apr, 2008 2 commits
  9. 01 Apr, 2008 1 commit
  10. 06 Mar, 2008 10 commits