rhashtable: simplify INIT_RHT_NULLS_HEAD()
authorNeilBrown <neilb@suse.com>
Mon, 18 Jun 2018 02:52:50 +0000 (12:52 +1000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 22 Jun 2018 04:43:27 +0000 (13:43 +0900)
The 'ht' and 'hash' arguments to INIT_RHT_NULLS_HEAD() are
no longer used - so drop them.  This allows us to also
remove the nhash argument from nested_table_alloc().

Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: NeilBrown <neilb@suse.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/rhashtable.h
lib/rhashtable.c

index d9f719af7936f3a06695142de56dc45054ebbd15..3f3a182bd0b4a177a72382252015b77d492c9d3d 100644 (file)
@@ -75,7 +75,7 @@ struct bucket_table {
        struct rhash_head __rcu *buckets[] ____cacheline_aligned_in_smp;
 };
 
-#define INIT_RHT_NULLS_HEAD(ptr, ht, hash) \
+#define INIT_RHT_NULLS_HEAD(ptr)       \
        ((ptr) = (typeof(ptr)) NULLS_MARKER(0))
 
 static inline bool rht_is_a_nulls(const struct rhash_head *ptr)
index 688693c919be31ea9c2219898242b6f525c8ced4..a81cd27d518c7a1748a55cd9d704ccf4956e7c35 100644 (file)
@@ -116,8 +116,7 @@ static void bucket_table_free_rcu(struct rcu_head *head)
 
 static union nested_table *nested_table_alloc(struct rhashtable *ht,
                                              union nested_table __rcu **prev,
-                                             unsigned int shifted,
-                                             unsigned int nhash)
+                                             unsigned int shifted)
 {
        union nested_table *ntbl;
        int i;
@@ -130,8 +129,7 @@ static union nested_table *nested_table_alloc(struct rhashtable *ht,
 
        if (ntbl && shifted) {
                for (i = 0; i < PAGE_SIZE / sizeof(ntbl[0].bucket); i++)
-                       INIT_RHT_NULLS_HEAD(ntbl[i].bucket, ht,
-                                           (i << shifted) | nhash);
+                       INIT_RHT_NULLS_HEAD(ntbl[i].bucket);
        }
 
        rcu_assign_pointer(*prev, ntbl);
@@ -157,7 +155,7 @@ static struct bucket_table *nested_bucket_table_alloc(struct rhashtable *ht,
                return NULL;
 
        if (!nested_table_alloc(ht, (union nested_table __rcu **)tbl->buckets,
-                               0, 0)) {
+                               0)) {
                kfree(tbl);
                return NULL;
        }
@@ -207,7 +205,7 @@ static struct bucket_table *bucket_table_alloc(struct rhashtable *ht,
        tbl->hash_rnd = get_random_u32();
 
        for (i = 0; i < nbuckets; i++)
-               INIT_RHT_NULLS_HEAD(tbl->buckets[i], ht, i);
+               INIT_RHT_NULLS_HEAD(tbl->buckets[i]);
 
        return tbl;
 }
@@ -1217,7 +1215,7 @@ struct rhash_head __rcu **rht_bucket_nested_insert(struct rhashtable *ht,
        nhash = index;
        shifted = tbl->nest;
        ntbl = nested_table_alloc(ht, &ntbl[index].table,
-                                 size <= (1 << shift) ? shifted : 0, nhash);
+                                 size <= (1 << shift) ? shifted : 0);
 
        while (ntbl && size > (1 << shift)) {
                index = hash & ((1 << shift) - 1);
@@ -1226,8 +1224,7 @@ struct rhash_head __rcu **rht_bucket_nested_insert(struct rhashtable *ht,
                nhash |= index << shifted;
                shifted += shift;
                ntbl = nested_table_alloc(ht, &ntbl[index].table,
-                                         size <= (1 << shift) ? shifted : 0,
-                                         nhash);
+                                         size <= (1 << shift) ? shifted : 0);
        }
 
        if (!ntbl)