netlink: Use default rhashtable hashfn
authorHerbert Xu <herbert@gondor.apana.org.au>
Mon, 23 Mar 2015 13:50:22 +0000 (00:50 +1100)
committerDavid S. Miller <davem@davemloft.net>
Tue, 24 Mar 2015 02:07:51 +0000 (22:07 -0400)
This patch removes the explicit jhash value for the hashfn parameter
of rhashtable.  As the key length is a multiple of 4, this means that
we will actually end up using jhash2.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Acked-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/netlink/af_netlink.c

index 651792141f076d9ff2100f9adc3bea2d054ff0e0..e2f7f28148e00b54fe9c237533633e97a78fb8b1 100644 (file)
@@ -3133,13 +3133,12 @@ static inline u32 netlink_hash(const void *data, u32 seed)
        struct netlink_compare_arg arg;
 
        netlink_compare_arg_init(&arg, sock_net(&nlk->sk), nlk->portid);
-       return jhash(&arg, netlink_compare_arg_len, seed);
+       return jhash2((u32 *)&arg, netlink_compare_arg_len / sizeof(u32), seed);
 }
 
 static const struct rhashtable_params netlink_rhashtable_params = {
        .head_offset = offsetof(struct netlink_sock, node),
        .key_len = netlink_compare_arg_len,
-       .hashfn = jhash,
        .obj_hashfn = netlink_hash,
        .obj_cmpfn = netlink_compare,
        .max_size = 65536,