Lines Matching refs:old_tbl
160 struct bucket_table *old_tbl = rht_dereference(ht->tbl, ht); in rhashtable_rehash_one() local
162 rht_dereference_rcu(old_tbl->future_tbl, ht)); in rhashtable_rehash_one()
163 struct rhash_head __rcu **pprev = &old_tbl->buckets[old_hash]; in rhashtable_rehash_one()
169 rht_for_each(entry, old_tbl, old_hash) { in rhashtable_rehash_one()
171 next = rht_dereference_bucket(entry->next, old_tbl, old_hash); in rhashtable_rehash_one()
207 struct bucket_table *old_tbl = rht_dereference(ht->tbl, ht); in rhashtable_rehash_chain() local
210 old_bucket_lock = rht_bucket_lock(old_tbl, old_hash); in rhashtable_rehash_chain()
215 old_tbl->rehash++; in rhashtable_rehash_chain()
220 struct bucket_table *old_tbl, in rhashtable_rehash_attach() argument
224 spin_lock_bh(old_tbl->locks); in rhashtable_rehash_attach()
227 if (rcu_access_pointer(old_tbl->future_tbl)) { in rhashtable_rehash_attach()
228 spin_unlock_bh(old_tbl->locks); in rhashtable_rehash_attach()
235 rcu_assign_pointer(old_tbl->future_tbl, new_tbl); in rhashtable_rehash_attach()
240 spin_unlock_bh(old_tbl->locks); in rhashtable_rehash_attach()
247 struct bucket_table *old_tbl = rht_dereference(ht->tbl, ht); in rhashtable_rehash_table() local
252 new_tbl = rht_dereference(old_tbl->future_tbl, ht); in rhashtable_rehash_table()
256 for (old_hash = 0; old_hash < old_tbl->size; old_hash++) in rhashtable_rehash_table()
263 list_for_each_entry(walker, &old_tbl->walkers, list) in rhashtable_rehash_table()
271 call_rcu(&old_tbl->rcu, bucket_table_free_rcu); in rhashtable_rehash_table()
293 struct bucket_table *new_tbl, *old_tbl = rht_dereference(ht->tbl, ht); in rhashtable_expand() local
298 old_tbl = rhashtable_last_table(ht, old_tbl); in rhashtable_expand()
300 new_tbl = bucket_table_alloc(ht, old_tbl->size * 2, GFP_KERNEL); in rhashtable_expand()
304 err = rhashtable_rehash_attach(ht, old_tbl, new_tbl); in rhashtable_expand()
329 struct bucket_table *new_tbl, *old_tbl = rht_dereference(ht->tbl, ht); in rhashtable_shrink() local
339 if (old_tbl->size <= size) in rhashtable_shrink()
342 if (rht_dereference(old_tbl->future_tbl, ht)) in rhashtable_shrink()
349 err = rhashtable_rehash_attach(ht, old_tbl, new_tbl); in rhashtable_shrink()
397 struct bucket_table *old_tbl; in rhashtable_insert_rehash() local
403 old_tbl = rht_dereference_rcu(ht->tbl, ht); in rhashtable_insert_rehash()
404 tbl = rhashtable_last_table(ht, old_tbl); in rhashtable_insert_rehash()
411 else if (old_tbl != tbl) in rhashtable_insert_rehash()