Skip to content
  1. Aug 05, 2009
  2. Aug 04, 2009
  3. Aug 03, 2009
  4. Jul 31, 2009
  5. Jul 30, 2009
    • Johannes Berg's avatar
      mac80211: fix suspend · 89c3a8ac
      Johannes Berg authored
      Jan reported that his b43-based laptop hangs during suspend.
      The problem turned out to be mac80211 asking the driver to
      stop the hardware before removing interfaces, and interface
      removal caused b43 to touch the hardware (while down, which
      causes the hang).
      
      This patch fixes mac80211 to do reorder these operations to
      have them in the correct order -- first remove interfaces
      and then stop the hardware. Some more code is necessary to
      be able to do so in a race-free manner, in particular it is
      necessary to not process frames received during quiescing.
      
      Fixes http://bugzilla.kernel.org/show_bug.cgi?id=13337
      
      .
      
      Reported-by: default avatarJan Scholz <scholz@fias.uni-frankfurt.de>
      Signed-off-by: default avatarJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      89c3a8ac
    • Roel Kluin's avatar
      libertas: Read buffer overflow · 57921c31
      Roel Kluin authored
      
      
      Several arrays were read before checking whether the index was within
      bounds. ARRAY_SIZE() should be used to determine the size of arrays.
      
      rates->rates has an arraysize of 1, so calling get_common_rates()
      with a rates_size of MAX_RATES (14) was causing reads out of bounds.
      
      tmp_size can increment at most to (ARRAY_SIZE(lbs_bg_rates) - 1) *
      (*rates_size - 1), so that should be the number of elements of tmp[].
      
      A goto can be eliminated: ret was already set upon its declaration.
      
      Signed-off-by: default avatarRoel Kluin <roel.kluin@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      57921c31