Merge branch 'udp_hash'
authorDavid S. Miller <davem@davemloft.net>
Thu, 17 Jul 2014 06:30:25 +0000 (23:30 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 17 Jul 2014 06:30:25 +0000 (23:30 -0700)
David Held says:

====================
udp: Fix multicast performance issues.

Fix performance issues with listening to many different multicast
sockets on different addresses with the same port. Instead of always
using hash1, fall back to hash2 lookup when hash1 lookup is long.
Patch 1 is a general cleanup and simplification which also makes the
main implementation in Patch 2 simpler.

Eric's recent change 63c6f81cdde5 avoided this being an issue in early
demux. This makes it work for regular delivery as well.

v1->v2
 - updated hash collision detection

v2->v3
 - avoid flushing under lock unnecessarily at ARRAY_SIZE boundary
====================

Signed-off-by: David S. Miller <davem@davemloft.net>

Trivial merge