1. 09 6月, 2009 1 次提交
  2. 12 5月, 2009 5 次提交
    • D
      Remove unreached code in drivers/net/mlx4/en_rx.c · 34fd5dad
      Dan Carpenter 提交于
      Remove the return after the goto.  We want the goto because it frees
      memory as well as returning err.
      
      Found by smatch (http://repo.or.cz/w/smatch.git).
      Signed-off-by: NDan Carpenter <error27@gmail.com>
      Signed-off-by: NAlan Cox <alan@linux.intel.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      34fd5dad
    • J
      iwlwifi: fix device id registration for 6000 series 2x2 devices · 542cc793
      Jay Sternberg 提交于
      Add device ids for 2x2 devices. Also fix antenna usage because these devices use
      antennas A and B, not B and C.
      Signed-off-by: NJay Sternberg <jay.e.sternberg@linux.intel.com>
      Signed-off-by: NReinette Chatre <reinette.chatre@intel.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      542cc793
    • B
      ath5k: update channel in sw state after stopping RX and TX · 209d889b
      Bob Copeland 提交于
      This fixes a non-theoretical race condition when transmitting and
      receiving frames during a scan.  If the channel or operating band
      changes while processing status descriptors in the tasklets, ath5k
      will incorrectly use the new channel and band when reporting the
      rates, even if the frame was actually sent on a previous channel.
      
      Typically this will manifest as a beacon found on an incorrect
      frequency and/or a warning in the driver while scanning:
      
      [ 4773.891944] cfg80211: Found new beacon on frequency: 5805 MHz (Ch 161) on phy0
      [ 4785.461125] ------------[ cut here ]------------
      [ 4785.461135] WARNING: at drivers/net/wireless/ath/ath5k/base.c:1141 ath5k_tasklet_rx+0x2ff/0x577 [ath5k]()
      [ 4785.461143] Hardware name: MacBook1,1
      [ 4785.461148] invalid hw_rix: 1b
      [ 4785.461152] Modules linked in: fuse i915 drm af_packet acpi_cpufreq binfmt_misc dm_mirror dm_region_hash dm_log dm_multipath dm_mod arc4 ecb snd_hda_codec_idt snd_hda_intel snd_hda_codec snd_seq_dummy snd_seq_oss snd_seq_midi_event ath5k snd_seq hid_apple usbhid snd_seq_device mac80211 appletouch snd_pcm_oss sky2 ohci1394 snd_mixer_oss ath ieee1394 snd_pcm bitrev snd_timer cfg80211 crc32 snd snd_page_alloc button processor ac ehci_hcd joydev uhci_hcd sg battery thermal sr_mod cdrom applesmc evdev input_polldev unix [last unloaded: microcode]
      [ 4785.461296] Pid: 0, comm: swapper Tainted: G        W  2.6.30-rc3-wl #112
      [ 4785.461302] Call Trace:
      [ 4785.461316]  [<c012590f>] warn_slowpath+0x76/0xa5
      [ 4785.461331]  [<c0219839>] ? debug_dma_unmap_page+0x5a/0x62
      [ 4785.461357]  [<f9982f88>] ath5k_tasklet_rx+0x2ff/0x577 [ath5k]
      [ 4785.461371]  [<c01446f7>] ? trace_hardirqs_off+0xb/0xd
      [ 4785.461381]  [<c0129928>] ? __tasklet_schedule+0x6e/0x7c
      [ 4785.461392]  [<c0129b02>] tasklet_action+0x92/0xe5
      [ 4785.461402]  [<c0129f91>] __do_softirq+0xb1/0x182
      [ 4785.461411]  [<c012a092>] do_softirq+0x30/0x48
      [ 4785.461428]  [<c012a20a>] irq_exit+0x3d/0x74
      [ 4785.461435]  [<c035a0de>] do_IRQ+0x76/0x8c
      [ 4785.461440]  [<c010312e>] common_interrupt+0x2e/0x34
      [ 4785.461445]  [<c014007b>] ? timer_list_show+0x1ab/0x939
      [ 4785.461457]  [<f85fd25c>] ? acpi_idle_enter_bm+0x27c/0x2b9 [processor]
      [ 4785.461463]  [<c02d1ed6>] cpuidle_idle_call+0x6a/0x9c
      [ 4785.461468]  [<c0101cc8>] cpu_idle+0x53/0x87
      [ 4785.461473]  [<c0346584>] rest_init+0x6c/0x6e
      [ 4785.461479]  [<c04df74d>] start_kernel+0x286/0x28b
      [ 4785.461484]  [<c04df037>] __init_begin+0x37/0x3c
      [ 4785.461487] ---[ end trace aaf8496ba3679dfb ]---
      Signed-off-by: NBob Copeland <me@bobcopeland.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      209d889b
    • J
      9be6f0d4
    • J
      airo: airo_get_encode{,ext} potential buffer overflow · aedec922
      John W. Linville 提交于
      Feeding the return code of get_wep_key directly to the length parameter
      of memcpy is a bad idea since it could be -1...
      Reported-by: NEugene Teo <eugeneteo@kernel.sg>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      aedec922
  3. 10 5月, 2009 1 次提交
  4. 09 5月, 2009 2 次提交
  5. 07 5月, 2009 2 次提交
  6. 05 5月, 2009 6 次提交
  7. 03 5月, 2009 1 次提交
  8. 02 5月, 2009 8 次提交
  9. 30 4月, 2009 2 次提交
    • L
      mv643xx_eth: 64bit mib counter read fix · 93af7aca
      Lennert Buytenhek 提交于
      On several mv643xx_eth hardware versions, the two 64bit mib counters
      for 'good octets received' and 'good octets sent' are actually 32bit
      counters, and reading from the upper half of the register has the same
      effect as reading from the lower half of the register: an atomic
      read-and-clear of the entire 32bit counter value.  This can under heavy
      traffic occasionally lead to small numbers being added to the upper
      half of the 64bit mib counter even though no 32bit wrap has occured.
      
      Since we poll the mib counters at least every 30 seconds anyway, we
      might as well just skip the reads of the upper halves of the hardware
      counters without breaking the stats, which this patch does.
      Signed-off-by: NLennert Buytenhek <buytenh@marvell.com>
      Cc: stable@kernel.org
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      93af7aca
    • L
      mv643xx_eth: OOM handling fixes · 1319ebad
      Lennert Buytenhek 提交于
      Currently, when OOM occurs during rx ring refill, mv643xx_eth will get
      into an infinite loop, due to the refill function setting the OOM bit
      but not clearing the 'rx refill needed' bit for this queue, while the
      calling function (the NAPI poll handler) will call the refill function
      in a loop until the 'rx refill needed' bit goes off, without checking
      the OOM bit.
      
      This patch fixes this by checking the OOM bit in the NAPI poll handler
      before attempting to do rx refill.  This means that once OOM occurs,
      we won't try to do any memory allocations again until the next invocation
      of the poll handler.
      
      While we're at it, change the OOM flag to be a single bit instead of
      one bit per receive queue since OOM is a system state rather than a
      per-queue state, and cancel the OOM timer on entry to the NAPI poll
      handler if it's running to prevent it from firing when we've already
      come out of OOM.
      Signed-off-by: NLennert Buytenhek <buytenh@marvell.com>
      Cc: stable@kernel.org
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1319ebad
  10. 29 4月, 2009 5 次提交
  11. 27 4月, 2009 5 次提交
  12. 22 4月, 2009 2 次提交