1. 05 1月, 2011 19 次提交
  2. 23 12月, 2010 13 次提交
  3. 21 12月, 2010 6 次提交
  4. 17 12月, 2010 2 次提交
    • B
      ath5k: Fix survey · f15a4bb2
      Bruno Randolf 提交于
      The old survey implementation was broken and returned nonsense data.
      
      Clear cycle counters and survey data on reset. Since the cycle counters easily
      overflow it's better to keep a local version of collected survey data (in ms
      resolution, instead of clockrate) and update this every time survey is
      retrieved. If survey is retrieved often enough to avoid cycle counter overflows
      this works fine, otherwise we could update survey more often, like ath9k does.
      Still only the survey for the current channel is kept.
      Signed-off-by: NBruno Randolf <br1@einfach.org>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      f15a4bb2
    • L
      ath: fix NULL pointer dereference on reg_notifier() · 931299cf
      Luis R. Rodriguez 提交于
      The reg_notifier() was recently updated as being capable of
      having the request passed as NULL, fix ath to follow this API
      change. Without this we end up oopsing:
      
      BUG: unable to handle kernel NULL pointer dereference at 0000000000000004
      IP: [<ffffffffa02fb8cb>] ath_reg_notifier_apply+0x5b/0xa0 [ath]
      PGD b4c4c067 PUD b4c4d067 PMD 0
      Oops: 0000 [#1] SMP DEBUG_PAGEALLOC
      last sysfs file: /sys/devices/pci0000:00/0000:00:1b.0/uevent
      CPU 1
      Modules linked in: <etc>
      Pid: 436, comm: modprobe Not tainted 2.6.37-rc5-wl+ #36 6460DWU/6460DWU
      RIP: 0010:[<ffffffffa02fb8cb>]  [<ffffffffa02fb8cb>] ath_reg_notifier_apply+0x5b/0xa0 [ath]
      RSP: 0018:ffff8800b6f6baa8  EFLAGS: 00010246
      RAX: ffff8800b527b254 RBX: ffff8800b532c180 RCX: 0000000000000018
      RDX: ffff8800b530c108 RSI: 0000000000000000 RDI: ffff8800b532c180
      RBP: ffff8800b6f6baa8 R08: ffff8800b532f268 R09: 0000000000000235
      R10: 00000000000016ad R11: 0000000000000018 R12: 0000000000000000
      R13: 0000000000000016 R14: ffff8800b532f268 R15: 0000000000000011
      FS:  00007f0c53104700(0000) GS:ffff8800bed00000(0000) knlGS:0000000000000000
      CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
      CR2: 0000000000000004 CR3: 00000000b6531000 CR4: 00000000000006e0
      DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
      DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
      Process modprobe (pid: 436, threadinfo ffff8800b6f6a000, task ffff8800b404dc40)
      Stack:
       ffff8800b6f6bac8 ffffffffa03ea651 ffff8800b532c180 ffff8800b527b254
       ffff8800b6f6bb38 ffffffffa01835ca ffffffffa019ed00 00000000a019ed80
       0000000000000002 ffff880000000002 ffffffffa0366140 0000000010aee572
      Call Trace:
       [<ffffffffa03ea651>] ath9k_reg_notifier+0x41/0x50 [ath9k]
       [<ffffffffa01835ca>] wiphy_update_regulatory+0x4ba/0x5a0 [cfg80211]
       [<ffffffffa0366140>] ? ieee80211_register_hw+0xa0/0x5b0 [mac80211]
       [<ffffffffa0366140>] ? ieee80211_register_hw+0xa0/0x5b0 [mac80211]
       [<ffffffffa017f994>] wiphy_register+0x1d4/0x360 [cfg80211]
       [<ffffffff8114b918>] ? __kmalloc+0x108/0x1c0
       [<ffffffffa0366223>] ieee80211_register_hw+0x183/0x5b0 [mac80211]
       [<ffffffffa03eb49b>] ath9k_init_device+0x66b/0x850 [ath9k]
       [<ffffffffa03f9dd6>] ath_pci_probe+0x2f6/0x3c0 [ath9k]
       [<ffffffff81037529>] ? default_spin_lock_flags+0x9/0x10
       [<ffffffff812e19cf>] local_pci_probe+0x5f/0xd0
       [<ffffffff812e2bf1>] pci_device_probe+0x101/0x120
       [<ffffffff81390aca>] ? driver_sysfs_add+0x7a/0xb0
       [<ffffffff81390c26>] driver_probe_device+0x96/0x1c0
       [<ffffffff81390deb>] __driver_attach+0x9b/0xa0
       [<ffffffff81390d50>] ? __driver_attach+0x0/0xa0
       [<ffffffff81390008>] bus_for_each_dev+0x68/0x90
       [<ffffffff81390a4e>] driver_attach+0x1e/0x20
       [<ffffffff81390309>] bus_add_driver+0xe9/0x290
       [<ffffffffa0407000>] ? ath9k_init+0x0/0x4d [ath9k]
       [<ffffffff81391130>] driver_register+0x80/0x150
       [<ffffffffa0407000>] ? ath9k_init+0x0/0x4d [ath9k]
       [<ffffffffa0407000>] ? ath9k_init+0x0/0x4d [ath9k]
       [<ffffffff812e2e76>] __pci_register_driver+0x56/0xd0
       [<ffffffffa03f9ec3>] ath_pci_init+0x23/0x30 [ath9k]
       [<ffffffffa040702b>] ath9k_init+0x2b/0x4d [ath9k]
       [<ffffffff81002053>] do_one_initcall+0x43/0x190
       [<ffffffff8109fb5b>] sys_init_module+0xbb/0x200
       [<ffffffff8100c042>] system_call_fastpath+0x16/0x1b
      Code: <who even reads this anyway? haha, ok you do>
      RIP  [<ffffffffa02fb8cb>] ath_reg_notifier_apply+0x5b/0xa0 [ath]
       RSP <ffff8800b6f6baa8>
      CR2: 0000000000000004
      ---[ end trace 6d03d3c7eda9f06b ]---
      Signed-off-by: NLuis R. Rodriguez <lrodriguez@atheros.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      931299cf