1. 22 May, 2013 9 commits
  2. 20 May, 2013 12 commits
  3. 19 May, 2013 2 commits
    • Chen Gang's avatar
      net: irda: using kzalloc() instead of kmalloc() to avoid strncpy() issue. · ff0102ee
      Chen Gang authored
      'discovery->data.info' length is 22, NICKNAME_MAX_LEN is 21, so the
      strncpy() will always left the last byte of 'discovery->data.info'
      uninitialized.
      
      When 'text' length is longer than 21 (NICKNAME_MAX_LEN), if still left
      the last byte of 'discovery->data.info' uninitialized, the next
      strlen() will cause issue.
      
      Also 'discovery->data' is 'struct irda_device_info' which defined in
      "include/uapi/...", it may copy to user mode, so need whole initialized.
      
      All together, need use kzalloc() instead of kmalloc() to initialize all
      members firstly.
      Signed-off-by: default avatarChen Gang <gang.chen@asianux.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ff0102ee
    • Paul Moore's avatar
      netlabel: improve domain mapping validation · 6b21e1b7
      Paul Moore authored
      The net/netlabel/netlabel_domainhash.c:netlbl_domhsh_add() function
      does not properly validate new domain hash entries resulting in
      potential problems when an administrator attempts to add an invalid
      entry.  One such problem, as reported by Vlad Halilov, is a kernel
      BUG (found in netlabel_domainhash.c:netlbl_domhsh_audit_add()) when
      adding an IPv6 outbound mapping with a CIPSO configuration.
      
      This patch corrects this problem by adding the necessary validation
      code to netlbl_domhsh_add() via the newly created
      netlbl_domhsh_validate() function.
      
      Ideally this patch should also be pushed to the currently active
      -stable trees.
      Reported-by: default avatarVlad Halilov <vlad.halilov@gmail.com>
      Signed-off-by: default avatarPaul Moore <pmoore@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6b21e1b7
  4. 18 May, 2013 3 commits
  5. 17 May, 2013 14 commits
    • Felix Fietkau's avatar
      ath9k: fix draining aggregation tid buffers · 6bb4880d
      Felix Fietkau authored
      After a tx attempt, an A-MPDU subframe can still have fi->retries at 0
      (if the retry count wasn't incremented due to powersave).
      In that case it is still tracked as part of the block ack window, so
      when draining the tid queue, its sequence number needs to be cleared
      from the pending frame bitmap.
      Signed-off-by: default avatarFelix Fietkau <nbd@openwrt.org>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      6bb4880d
    • Felix Fietkau's avatar
      ath9k: fix rate handling/reporting · 0c585dda
      Felix Fietkau authored
      This patch fixes some issues introduced in the rate control API rework.
      When not running aggregation, copy bf->rates into info->control.rates
      before applying the rate control status to it.
      In ath_lookup_rate, the rates need to be pulled from bf->rates, not the
      tx info.
      Signed-off-by: default avatarFelix Fietkau <nbd@openwrt.org>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      0c585dda
    • Felix Fietkau's avatar
      ath9k: fix aggregation stop/flush handling · 16e23428
      Felix Fietkau authored
      When aggregation stop is requested, don't run the mac80211 aggregation
      stop callback yet, while the session is still blocked.
      Also, when aggregation flush is requested, don't run the callback at all.
      Signed-off-by: default avatarFelix Fietkau <nbd@openwrt.org>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      16e23428
    • Sujith Manoharan's avatar
      ath9k_hw: Enable manual peak calibration for AR9485 · e99c60b5
      Sujith Manoharan authored
      Manual peak calibration is currently enabled only for
      AR9462 and AR9565. This is also required for AR9485.
      The initvals are also modified to disable HW peak calibration.
      
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarSujith Manoharan <c_manoha@qca.qualcomm.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      e99c60b5
    • Albert Pool's avatar
      rtlwifi: rtl8192cu: Add new USB ID · 707a6152
      Albert Pool authored
      This adds the USB ID of the On Networks N300MA, clone of Netgear WNA3100M.
      Signed-off-by: default avatarAlbert Pool <albertpool@solcon.nl>
      Signed-off-by: default avatarLarry Finger <Larry.Finger@lwfinger.net>
      Reported-by: default avatarAna Rey <Anazul77@hotmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      707a6152
    • Arend van Spriel's avatar
      brcmfmac: announce P2P_DEVICE support in wiphy structure · 9af221b3
      Arend van Spriel authored
      P2P_DEVICE support was removed from brcmfmac for v3.9 kernel with
      the commit below:
      
      commit 1527c343
      Author: Arend van Spriel <arend@broadcom.com>
      Date:   Thu Apr 4 12:10:11 2013 +0200
      
          brcmfmac: remove advertising P2P device support
      
      However, it got merged into wireless-next. But for 3.10 brcmfmac does
      support P2P device. Putting it back with this commit.
      Reviewed-by: default avatarHante Meuleman <meuleman@broadcom.com>
      Signed-off-by: default avatarArend van Spriel <arend@broadcom.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      9af221b3
    • Larry Finger's avatar
      rtlwifi: rtl8188ee: Fix warning when building on big-endian systems · 58dd3ff8
      Larry Finger authored
      In http://lkml.indiana.edu/hypermail/linux/kernel/1305.1/index.html,
      Geert Uytterhoeven reports a new warning when building 3.10-rc1 in
      this driver. This is caused by using a "#if" test to see if __LITTLE_ENDIAN
      is set, which fails for all big-endian systems. Change to "ifdef".
      Signed-off-by: default avatarLarry Finger <Larry.Finger@lwfinger.net>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      58dd3ff8
    • Sujith Manoharan's avatar
      ath9k: Fix crash on module unload · af690092
      Sujith Manoharan authored
      Make sure that any open relayfs files are closed before
      unregistering with mac80211, otherwise this crash is seen:
      
      [ 1331.097846] BUG: unable to handle kernel paging request at 6b6b6b8b
      [ 1331.098170] IP: [<c063d0d6>] debugfs_remove+0x26/0x80
      [ 1331.098170] *pdpt = 000000002f9aa001 *pde = 0000000000000000
      [ 1331.098170] Oops: 0000 [#1] PREEMPT SMP
      [ 1331.098170] Modules linked in: iptable_raw xt_CT nf_conntrack_ipv4 nf_defrag]
      [ 1331.098170] Pid: 4794, comm: rmmod Tainted: G        WC   3.9.1+ #5 To Be Fi.
      [ 1331.098170] EIP: 0060:[<c063d0d6>] EFLAGS: 00010202 CPU: 0
      [ 1331.098170] EIP is at debugfs_remove+0x26/0x80
      [ 1331.098170] EAX: f2f3acd0 EBX: f2f3acd0 ECX: 00000006 EDX: f8622348
      [ 1331.098170] ESI: 6b6b6b6b EDI: 00000001 EBP: ee251e14 ESP: ee251e0c
      [ 1331.098170]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
      [ 1331.098170] CR0: 8005003b CR2: 6b6b6b8b CR3: 2e7b7000 CR4: 000007e0
      [ 1331.098170] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000
      [ 1331.098170] DR6: ffff0ff0 DR7: 00000400
      [ 1331.098170] Process rmmod (pid: 4794, ti=ee250000 task=efaa2560 task.ti=ee25)
      [ 1331.098170] Stack:
      [ 1331.098170]  f241e170 0000000a ee251e1c f861394d ee251e28 c04e3088 f241e170 4
      [ 1331.098170]  c04e30fe f45482b0 ee251e54 c04e3187 f25e86b0 ee251e54 f8618748 0
      [ 1331.098170]  0000000a 00000001 ee251e68 f860065b f2509e20 f25085a0 f5b6e8a4 8
      [ 1331.098170] Call Trace:
      [ 1331.098170]  [<f861394d>] remove_buf_file_handler+0xd/0x20 [ath9k]
      [ 1331.098170]  [<c04e3088>] relay_remove_buf+0x18/0x30
      [ 1331.098170]  [<c04e30fe>] relay_close_buf+0x2e/0x40
      [ 1331.098170]  [<c04e3187>] relay_close+0x77/0xf0
      [ 1331.098170]  [<f8618748>] ? dpd_exit+0x38/0x40 [ath9k]
      [ 1331.098170]  [<f860065b>] ath9k_deinit_softc+0x8b/0xa0 [ath9k]
      [ 1331.098170]  [<f86006b8>] ath9k_deinit_device+0x48/0x60 [ath9k]
      [ 1331.098170]  [<f86107f1>] ath_pci_remove+0x31/0x50 [ath9k]
      [ 1331.098170]  [<c06dbff8>] pci_device_remove+0x38/0xc0
      [ 1331.098170]  [<c079daa4>] __device_release_driver+0x64/0xc0
      [ 1331.098170]  [<c079db97>] driver_detach+0x97/0xa0
      [ 1331.098170]  [<c079cacc>] bus_remove_driver+0x6c/0xe0
      [ 1331.098170]  [<c079c197>] ? bus_put+0x17/0x20
      [ 1331.098170]  [<c079cae3>] ? bus_remove_driver+0x83/0xe0
      [ 1331.098170]  [<c079e709>] driver_unregister+0x49/0x80
      [ 1331.098170]  [<c06dc138>] pci_unregister_driver+0x18/0x80
      [ 1331.098170]  [<f8610602>] ath_pci_exit+0x12/0x20 [ath9k]
      [ 1331.098170]  [<f8619ce0>] ath9k_exit+0x17/0x337 [ath9k]
      [ 1331.098170]  [<c09e537d>] ? mutex_unlock+0xd/0x10
      [ 1331.098170]  [<c04bd36c>] sys_delete_module+0x17c/0x250
      [ 1331.098170]  [<c0540dc4>] ? do_munmap+0x244/0x2d0
      [ 1331.098170]  [<c0540e96>] ? vm_munmap+0x46/0x60
      [ 1331.098170]  [<c09e8dc4>] ? restore_all+0xf/0xf
      [ 1331.098170]  [<c09ebf50>] ? __do_page_fault+0x4c0/0x4c0
      [ 1331.098170]  [<c04b18e4>] ? trace_hardirqs_on_caller+0xf4/0x180
      [ 1331.098170]  [<c09ef28d>] sysenter_do_call+0x12/0x38
      [ 1331.098170] Code: 90 8d 74 26 00 55 89 e5 83 ec 08 89 1c 24 89 74 24 04 3e 82
      [ 1331.098170] EIP: [<c063d0d6>] debugfs_remove+0x26/0x80 SS:ESP 0068:ee251e0c
      [ 1331.098170] CR2: 000000006b6b6b8b
      [ 1331.727971] ---[ end trace b5bb9f2066cef7f9 ]---
      
      Cc: <stable@vger.kernel.org>
      Acked-by: default avatarSimon Wunderlich <siwu@hrz.tu-chemnitz.de>
      Tested-by: default avatarBen Greear <greearb@candelatech.com>
      Signed-off-by: default avatarSujith Manoharan <c_manoha@qca.qualcomm.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      af690092
    • Geert Uytterhoeven's avatar
      net/wireless: ATH9K should depend on HAS_DMA · a01ae5b3
      Geert Uytterhoeven authored
      If NO_DMA=y:
      
      drivers/built-in.o: In function `ath9k_beacon_generate':
      drivers/net/wireless/ath/ath9k/beacon.c:146: undefined reference to `dma_unmap_single'
      drivers/net/wireless/ath/ath9k/beacon.c:174: undefined reference to `dma_map_single'
      drivers/net/wireless/ath/ath9k/beacon.c:176: undefined reference to `dma_mapping_error'
      drivers/built-in.o: In function `ath9k_beacon_remove_slot':
      drivers/net/wireless/ath/ath9k/beacon.c:252: undefined reference to `dma_unmap_single'
      drivers/built-in.o: In function `ath_descdma_setup':
      drivers/net/wireless/ath/ath9k/init.c:382: undefined reference to `dmam_alloc_coherent'
      drivers/built-in.o: In function `ath_edma_get_buffers':
      drivers/net/wireless/ath/ath9k/recv.c:616: undefined reference to `dma_sync_single_for_cpu'
      drivers/built-in.o: In function `ath_get_next_rx_buf':
      drivers/net/wireless/ath/ath9k/recv.c:740: undefined reference to `dma_sync_single_for_cpu'
      drivers/built-in.o: In function `ath_rx_edma_cleanup':
      drivers/net/wireless/ath/ath9k/recv.c:176: undefined reference to `dma_unmap_single'
      drivers/built-in.o: In function `ath_rx_cleanup':
      drivers/net/wireless/ath/ath9k/recv.c:340: undefined reference to `dma_unmap_single'
      drivers/built-in.o: In function `ath_rx_edma_buf_link':
      drivers/net/wireless/ath/ath9k/recv.c:122: undefined reference to `dma_sync_single_for_cpu'
      drivers/built-in.o: In function `ath_rx_tasklet':
      drivers/net/wireless/ath/ath9k/recv.c:1275: undefined reference to `dma_map_single'
      drivers/net/wireless/ath/ath9k/recv.c:1277: undefined reference to `dma_mapping_error'
      drivers/net/wireless/ath/ath9k/recv.c:1283: undefined reference to `dma_unmap_single'
      drivers/built-in.o: In function `ath_rx_edma_init':
      drivers/net/wireless/ath/ath9k/recv.c:226: undefined reference to `dma_map_single'
      drivers/net/wireless/ath/ath9k/recv.c:229: undefined reference to `dma_mapping_error'
      drivers/built-in.o: In function `ath_rx_init':
      drivers/net/wireless/ath/ath9k/recv.c:303: undefined reference to `dma_map_single'
      drivers/net/wireless/ath/ath9k/recv.c:306: undefined reference to `dma_mapping_error'
      drivers/built-in.o: In function `ath_tx_complete_buf':
      drivers/net/wireless/ath/ath9k/xmit.c:2088: undefined reference to `dma_unmap_single'
      drivers/built-in.o: In function `ath_txstatus_setup':
      drivers/net/wireless/ath/ath9k/xmit.c:2344: undefined reference to `dmam_alloc_coherent'
      drivers/built-in.o: In function `ath_tx_set_retry':
      drivers/net/wireless/ath/ath9k/xmit.c:307: undefined reference to `dma_sync_single_for_cpu'
      drivers/built-in.o: In function `ath_tx_setup_buffer':
      drivers/net/wireless/ath/ath9k/xmit.c:1887: undefined reference to `dma_map_single'
      drivers/net/wireless/ath/ath9k/xmit.c:1889: undefined reference to `dma_mapping_error'
      Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Cc: Luis R. Rodriguez <mcgrof@qca.qualcomm.com>
      Cc: John W. Linville <linville@tuxdriver.com>
      Cc: linux-wireless@vger.kernel.org
      Cc: netdev@vger.kernel.org
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      a01ae5b3
    • Rafał Miłecki's avatar
      bcma: add more core IDs · d4988d4c
      Rafał Miłecki authored
      PCIe and ARM CR4 cores were found on 14e4:43b1 AKA BCM4352.
      Reported-by: default avatarGabriel Thörnblad <gabriel@thornblad.com>
      Signed-off-by: default avatarRafał Miłecki <zajec5@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      d4988d4c
    • Denis Efremov's avatar
      iwlegacy: remove inline marking of EXPORT_SYMBOL functions · becdbc59
      Denis Efremov authored
      EXPORT_SYMBOL and inline directives are contradictory to each other.
      The patch fixes this inconsistency.
      
      Found by Linux Driver Verification project (linuxtesting.org).
      Signed-off-by: default avatarDenis Efremov <yefremov.denis@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      becdbc59
    • John W. Linville's avatar
    • David S. Miller's avatar
      Merge tag 'batman-adv-fix-for-davem' of git://git.open-mesh.org/linux-merge · 7ffc37fc
      David S. Miller authored
      Included changes:
      - fix global protection fault by avoiding double call_rcu
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7ffc37fc
    • Linus Lüssing's avatar
      batman-adv: Fix rcu_barrier() miss due to double call_rcu() in TT code · 72822225
      Linus Lüssing authored
      rcu_barrier() only waits for the currently scheduled rcu functions
      to finish - it won't wait for any function scheduled via another
      call_rcu() within an rcu scheduled function.
      
      Unfortunately our batadv_tt_orig_list_entry_free_ref() does just that,
      via a batadv_orig_node_free_ref() call, leading to our rcu_barrier()
      call potentially missing such a batadv_orig_node_free_ref().
      
      This patch fixes this issue by calling the batadv_orig_node_free_rcu()
      directly from the rcu callback, removing the unnecessary, additional
      call_rcu() layer here.
      Signed-off-by: default avatarLinus Lüssing <linus.luessing@web.de>
      Signed-off-by: default avatarMarek Lindner <lindner_marek@yahoo.de>
      Acked-by: default avatarAntonio Quartulli <ordex@autistici.org>
      72822225