1. 02 8月, 2013 5 次提交
    • J
      ipv6: move peer_addr init into ipv6_add_addr() · 3f8f5298
      Jiri Pirko 提交于
      Signed-off-by: NJiri Pirko <jiri@resnulli.us>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3f8f5298
    • M
      ipv6: update ip6_rt_last_gc every time GC is run · 49a18d86
      Michal Kubeček 提交于
      As pointed out by Eric Dumazet, net->ipv6.ip6_rt_last_gc should
      hold the last time garbage collector was run so that we should
      update it whenever fib6_run_gc() calls fib6_clean_all(), not only
      if we got there from ip6_dst_gc().
      Signed-off-by: NMichal Kubecek <mkubecek@suse.cz>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      49a18d86
    • M
      ipv6: prevent fib6_run_gc() contention · 2ac3ac8f
      Michal Kubeček 提交于
      On a high-traffic router with many processors and many IPv6 dst
      entries, soft lockup in fib6_run_gc() can occur when number of
      entries reaches gc_thresh.
      
      This happens because fib6_run_gc() uses fib6_gc_lock to allow
      only one thread to run the garbage collector but ip6_dst_gc()
      doesn't update net->ipv6.ip6_rt_last_gc until fib6_run_gc()
      returns. On a system with many entries, this can take some time
      so that in the meantime, other threads pass the tests in
      ip6_dst_gc() (ip6_rt_last_gc is still not updated) and wait for
      the lock. They then have to run the garbage collector one after
      another which blocks them for quite long.
      
      Resolve this by replacing special value ~0UL of expire parameter
      to fib6_run_gc() by explicit "force" parameter to choose between
      spin_lock_bh() and spin_trylock_bh() and call fib6_run_gc() with
      force=false if gc_thresh is reached but not max_size.
      Signed-off-by: NMichal Kubecek <mkubecek@suse.cz>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2ac3ac8f
    • D
      Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless · 1f1059fc
      David S. Miller 提交于
      John W. Linville says:
      
      ====================
      This pull request is intended for the 3.11 stream.  It is a bit
      larger than usual, as it includes pulls from most of my feeder trees
      as well...
      
      For the Bluetooth bits, Gustavo says:
      
      "A few fixes and devices ID additions for 3.11:
      
       * There are 4 new ath3k device ids
       * Fixed stack memory usage in ath3k.
       * Fixed the init process of BlueFRITZ! devices, they were failing to init
         due to an unsupported command we sent.
       * Fixed wrong use of PTR_ERR in btusb code that was preventing intel devices
         to work properly.
       * Fixed race condition between hci_register_dev() and hci_dev_open() that
         could cause a NULL pointer dereference.
       * Fixed race condition that could call hci_req_cmd_complete() and make some
         devices to fail as showed in the log added to the commit message."
      
      Regarding the NFC bits, Samuel says:
      
      "We have:
      
      1) A build failure fix for the NCI SPI transport layer due to a
         missing CRC_CCITT Kconfig dependency.
      
      2) A netlink command rename: CMD_FW_UPLOAD was merged during the 3.11
         merge window but the typical terminology for loading a firmware to a
         target is firmware download rather than upload. In order to avoid any
         confusion in a file exported to userspace, we rename this command to
         CMD_FW_DOWNLOAD."
      
      Samuel's item #2 isn't strictly a fix, but it seems safe and should
      avoid confusion in the future.
      
      As for the mac80211 bits, Johannes says:
      
      "I only have three fixes this time, a fix for a suspend regression, a
      patch correcting the initiator in regulatory code and one fix for mesh
      station powersave."
      
      With respect to the iwlwifi bits, Johannes says:
      
      "We have a scan fix for passive channels, a new PCI device ID for an old
      device, a NIC reset fix, an RF-Kill fix, a fix for powersave when GO
      interfaces are present as well as an aggregation session fix (for a
      corner case) and a workaround for a firmware design issue - it only
      supports a single GTK in D3."
      
      Bringing-up the rear with the Atheros trees, Kalle says:
      
      "Geert Uytterhoeven fixed an ath10k build problem when NO_DMA=y. I added
      a missing MAINTAINERS entry for ath10k and updated ath6kl git tree
      location."
      
      Along with the above...
      
      Arend van Spriel fixes a brcmfmac WARNING when unplugging the device.
      
      Avinash Patil proves a couple of minor mwifiex fixes relating to P2P mode.
      
      Luciano Coelho updates the MAINTAINERS entry for the wilink drivers.
      
      Stanislaw Gruszka brings an rt2x00 fix for a queue start/stop problem.
      
      Stone Piao fixes another mwifiex problem, a command timeout related to P2P mode.
      
      Tomasz Moń corrects an endian problem in mwifiex.
      
      I'll remind my feeder maintainers to slowdown the patchflow.
      Beyond that, please let me know if there are problems!
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1f1059fc
    • J
      Merge branch 'master' of... · 22e02a02
      John W. Linville 提交于
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless into for-davem
      22e02a02
  2. 01 8月, 2013 21 次提交
  3. 31 7月, 2013 14 次提交