Sources/ospboard/opt/osp/src/kernel/include/linux/rhashtable.h
/* Internal function, please use rhashtable_remove_fast() instead */
Internal function, please use rhashtable_remove_fast() instead
Internal function please use rhashtable_remove_fast () instead
static inline int __rhashtable_remove_fast(
	struct rhashtable *ht, struct rhash_head *obj,
	const struct rhashtable_params params, bool rhlist)
{
	struct bucket_table *tbl;
	int err;
	rcu_read_lock();
	tbl = rht_dereference_rcu(ht->tbl, ht);
	while ((err = __rhashtable_remove_fast_one(ht, tbl, obj, params,
						   rhlist)) &&
	       (tbl = rht_dereference_rcu(tbl->future_tbl, ht)))
		;
	rcu_read_unlock();
	return err;
}
static inline int __rhashtable_remove_fast ( struct rhashtable * ht , struct rhash_head * obj , const struct rhashtable_params params , bool rhlist ) { struct bucket_table * tbl ; int err ; rcu_read_lock ( ) ; tbl = rht_dereference_rcu ( ht -> tbl , ht ) ; while ( ( err = __rhashtable_remove_fast_one ( ht , tbl , obj , params , rhlist ) ) && ( tbl = rht_dereference_rcu ( tbl -> future_tbl , ht ) ) ) ; rcu_read_unlock ( ) ; return err ; }
Internal function, please use rhashtable_remove_fast() instead
Internal function please use rhashtable_remove_fast () instead
/* Because we have already taken (and released) the bucket
	 * lock in old_tbl, if we find that future_tbl is not yet
	 * visible then that guarantees the entry to still be in
	 * the old tbl if it exists.
	 */