]> git.karo-electronics.de Git - linux-beck.git/commit
[NETFILTER]: non-power-of-two jhash optimizations
authorPatrick McHardy <kaber@trash.net>
Tue, 18 Dec 2007 06:45:52 +0000 (22:45 -0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 28 Jan 2008 22:59:11 +0000 (14:59 -0800)
commit34498825cb9062192b77fa02dae672a4fe6eec70
tree7f856aff21ae3ab1328ab9bcf3549bca8e13df35
parent7b21e09d1c17ef0296ec5a6df231a6c5c87b2fd7
[NETFILTER]: non-power-of-two jhash optimizations

Apply Eric Dumazet's jhash optimizations where applicable. Quoting Eric:

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: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/netfilter/ipt_CLUSTERIP.c
net/ipv4/netfilter/nf_nat_core.c
net/netfilter/nf_conntrack_core.c
net/netfilter/nf_conntrack_expect.c