Lines Matching refs:new_tbl
213 struct bucket_table *new_tbl; in rhashtable_last_table() local
216 new_tbl = tbl; in rhashtable_last_table()
220 return new_tbl; in rhashtable_last_table()
226 struct bucket_table *new_tbl = rhashtable_last_table(ht, old_tbl); in rhashtable_rehash_one() local
233 if (new_tbl->nest) in rhashtable_rehash_one()
251 new_hash = head_hashfn(ht, new_tbl, entry); in rhashtable_rehash_one()
253 new_bucket_lock = rht_bucket_lock(new_tbl, new_hash); in rhashtable_rehash_one()
256 head = rht_dereference_bucket(new_tbl->buckets[new_hash], in rhashtable_rehash_one()
257 new_tbl, new_hash); in rhashtable_rehash_one()
261 rcu_assign_pointer(new_tbl->buckets[new_hash], entry); in rhashtable_rehash_one()
294 struct bucket_table *new_tbl) in rhashtable_rehash_attach() argument
302 if (cmpxchg(&old_tbl->future_tbl, NULL, new_tbl) != NULL) in rhashtable_rehash_attach()
311 struct bucket_table *new_tbl; in rhashtable_rehash_table() local
316 new_tbl = rht_dereference(old_tbl->future_tbl, ht); in rhashtable_rehash_table()
317 if (!new_tbl) in rhashtable_rehash_table()
328 rcu_assign_pointer(ht->tbl, new_tbl); in rhashtable_rehash_table()
341 return rht_dereference(new_tbl->future_tbl, ht) ? -EAGAIN : 0; in rhashtable_rehash_table()
348 struct bucket_table *new_tbl; in rhashtable_rehash_alloc() local
353 new_tbl = bucket_table_alloc(ht, size, GFP_KERNEL); in rhashtable_rehash_alloc()
354 if (new_tbl == NULL) in rhashtable_rehash_alloc()
357 err = rhashtable_rehash_attach(ht, old_tbl, new_tbl); in rhashtable_rehash_alloc()
359 bucket_table_free(new_tbl); in rhashtable_rehash_alloc()
432 struct bucket_table *new_tbl; in rhashtable_insert_rehash() local
450 new_tbl = bucket_table_alloc(ht, size, GFP_ATOMIC | __GFP_NOWARN); in rhashtable_insert_rehash()
451 if (new_tbl == NULL) in rhashtable_insert_rehash()
454 err = rhashtable_rehash_attach(ht, tbl, new_tbl); in rhashtable_insert_rehash()
456 bucket_table_free(new_tbl); in rhashtable_insert_rehash()
530 struct bucket_table *new_tbl; in rhashtable_insert_one() local
539 new_tbl = rht_dereference_rcu(tbl->future_tbl, ht); in rhashtable_insert_one()
540 if (new_tbl) in rhashtable_insert_one()
541 return new_tbl; in rhashtable_insert_one()
578 struct bucket_table *new_tbl; in rhashtable_try_insert() local
602 new_tbl = rhashtable_insert_one(ht, tbl, hash, obj, data); in rhashtable_try_insert()
603 if (PTR_ERR(new_tbl) != -EEXIST) in rhashtable_try_insert()
604 data = ERR_CAST(new_tbl); in rhashtable_try_insert()
606 while (!IS_ERR_OR_NULL(new_tbl)) { in rhashtable_try_insert()
607 tbl = new_tbl; in rhashtable_try_insert()
613 new_tbl = rhashtable_insert_one(ht, tbl, hash, obj, data); in rhashtable_try_insert()
614 if (PTR_ERR(new_tbl) != -EEXIST) in rhashtable_try_insert()
615 data = ERR_CAST(new_tbl); in rhashtable_try_insert()