1. 16 11月, 2010 4 次提交
  2. 21 10月, 2010 5 次提交
  3. 12 10月, 2010 1 次提交
    • E
      net dst: use a percpu_counter to track entries · fc66f95c
      Eric Dumazet 提交于
      struct dst_ops tracks number of allocated dst in an atomic_t field,
      subject to high cache line contention in stress workload.
      
      Switch to a percpu_counter, to reduce number of time we need to dirty a
      central location. Place it on a separate cache line to avoid dirtying
      read only fields.
      
      Stress test :
      
      (Sending 160.000.000 UDP frames,
      IP route cache disabled, dual E5540 @2.53GHz,
      32bit kernel, FIB_TRIE, SLUB/NUMA)
      
      Before:
      
      real    0m51.179s
      user    0m15.329s
      sys     10m15.942s
      
      After:
      
      real	0m45.570s
      user	0m15.525s
      sys	9m56.669s
      
      With a small reordering of struct neighbour fields, subject of a
      following patch, (to separate refcnt from other read mostly fields)
      
      real	0m41.841s
      user	0m15.261s
      sys	8m45.949s
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fc66f95c
  4. 20 9月, 2010 1 次提交
  5. 02 9月, 2010 1 次提交
  6. 26 8月, 2010 2 次提交
  7. 24 8月, 2010 1 次提交
  8. 23 8月, 2010 1 次提交
  9. 31 7月, 2010 2 次提交
  10. 29 7月, 2010 1 次提交
  11. 20 7月, 2010 1 次提交
  12. 16 7月, 2010 1 次提交
  13. 08 7月, 2010 2 次提交
    • E
      net: fix 64 bit counters on 32 bit arches · 28172739
      Eric Dumazet 提交于
      There is a small possibility that a reader gets incorrect values on 32
      bit arches. SNMP applications could catch incorrect counters when a
      32bit high part is changed by another stats consumer/provider.
      
      One way to solve this is to add a rtnl_link_stats64 param to all
      ndo_get_stats64() methods, and also add such a parameter to
      dev_get_stats().
      
      Rule is that we are not allowed to use dev->stats64 as a temporary
      storage for 64bit stats, but a caller provided area (usually on stack)
      
      Old drivers (only providing get_stats() method) need no changes.
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      28172739
    • H
      bridge: Clear IPCB before possible entry into IP stack · 17762060
      Herbert Xu 提交于
      The bridge protocol lives dangerously by having incestuous relations
      with the IP stack.  In this instance an abomination has been created
      where a bogus IPCB area from a bridged packet leads to a crash in
      the IP stack because it's interpreted as IP options.
      
      This patch papers over the problem by clearing the IPCB area in that
      particular spot.  To fix this properly we'd also need to parse any
      IP options if present but I'm way too lazy for that.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      
      Cheers,
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      17762060
  14. 06 7月, 2010 1 次提交
  15. 02 7月, 2010 2 次提交
  16. 24 6月, 2010 1 次提交
  17. 18 6月, 2010 1 次提交
  18. 16 6月, 2010 6 次提交
  19. 15 6月, 2010 1 次提交
    • P
      net: Make accesses to ->br_port safe for sparse RCU · 81bdf5bd
      Paul E. McKenney 提交于
      The new versions of the rcu_dereference() APIs requires that any pointers
      passed to one of these APIs be fully defined.  The ->br_port field
      in struct net_device points to a struct net_bridge_port, which is an
      incomplete type.  This commit therefore changes ->br_port to be a void*,
      and introduces a br_port() helper function to convert the type to struct
      net_bridge_port, and applies this new helper function where required.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Cc: David Miller <davem@davemloft.net>
      Cc: Stephen Hemminger <shemminger@linux-foundation.org>
      Cc: Eric Dumazet <eric.dumazet@gmail.com>
      81bdf5bd
  20. 11 6月, 2010 1 次提交
  21. 02 6月, 2010 1 次提交
  22. 01 6月, 2010 1 次提交
  23. 22 5月, 2010 1 次提交
  24. 19 5月, 2010 1 次提交