aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/neighbour.h
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2011-07-11 04:28:12 -0400
committerDavid S. Miller <davem@davemloft.net>2011-07-11 04:28:12 -0400
commitcd0893369ca85fd11bc517081b2d9079d2ef2f90 (patch)
treee2f46e4b4270c7403a895339df93d9bbefb7c363 /include/net/neighbour.h
parentd84e0bd7971eb8357c700151ee4e8e4101ee65fa (diff)
neigh: Store hash shift instead of mask.
And mask the hash function result by simply shifting down the "->hash_shift" most significant bits. Currently which bits we use is arbitrary since jhash produces entropy evenly across the whole hash function result. But soon we'll be using universal hashing functions, and in those cases more entropy exists in the higher bits than the lower bits, because they use multiplies. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/neighbour.h')
-rw-r--r--include/net/neighbour.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/net/neighbour.h b/include/net/neighbour.h
index 4014b623880c..6fe8c2cd5acb 100644
--- a/include/net/neighbour.h
+++ b/include/net/neighbour.h
@@ -142,7 +142,7 @@ struct pneigh_entry {
142 142
143struct neigh_hash_table { 143struct neigh_hash_table {
144 struct neighbour __rcu **hash_buckets; 144 struct neighbour __rcu **hash_buckets;
145 unsigned int hash_mask; 145 unsigned int hash_shift;
146 __u32 hash_rnd; 146 __u32 hash_rnd;
147 struct rcu_head rcu; 147 struct rcu_head rcu;
148}; 148};