[NETFILTER]: xt_hashlimit: speedup hash_dst()
authorEric Dumazet <dada1@cosmosbay.com>
Tue, 18 Dec 2007 06:45:13 +0000 (22:45 -0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 28 Jan 2008 22:59:10 +0000 (14:59 -0800)
commite2f82ac3fcffffca59751b65124544d11ed8be4a
tree9eba528eb094b79da8c471c3980c6a6b90f371b4
parent22c2d8bca212a655c120fd6617328ffa3480afad
[NETFILTER]: xt_hashlimit: speedup hash_dst()

1) Using jhash2() instead of jhash() is a litle bit faster if applicable.

2) Thanks to jhash, hash value uses full 32 bits.
   Instead of returning hash % size (implying a divide)
   we return the high 32 bits of the (hash * size) that will
   give results between [0 and size-1] and same hash distribution.

  On most cpus, a multiply is less expensive than a divide, by an order
  of magnitude.

Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/netfilter/xt_hashlimit.c