mirror of
https://gitee.com/bianbu-linux/linux-6.6
synced 2025-04-24 14:07:52 -04:00
rhashtable: replace rht_ptr_locked() with rht_assign_locked()
The only times rht_ptr_locked() is used, it is to store a new value in a bucket-head. This is the only time it makes sense to use it too. So replace it by a function which does the whole task: Sets the lock bit and assigns to a bucket head. Signed-off-by: NeilBrown <neilb@suse.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
adc6a3ab19
commit
f4712b46a5
2 changed files with 9 additions and 6 deletions
|
@ -259,7 +259,7 @@ static int rhashtable_rehash_one(struct rhashtable *ht,
|
|||
rcu_assign_pointer(*pprev, next);
|
||||
else
|
||||
/* Need to preserved the bit lock. */
|
||||
rcu_assign_pointer(*bkt, rht_ptr_locked(next));
|
||||
rht_assign_locked(bkt, next);
|
||||
|
||||
out:
|
||||
return err;
|
||||
|
@ -517,7 +517,7 @@ static void *rhashtable_lookup_one(struct rhashtable *ht,
|
|||
rcu_assign_pointer(*pprev, obj);
|
||||
else
|
||||
/* Need to preserve the bit lock */
|
||||
rcu_assign_pointer(*bkt, rht_ptr_locked(obj));
|
||||
rht_assign_locked(bkt, obj);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
@ -570,7 +570,7 @@ static struct bucket_table *rhashtable_insert_one(struct rhashtable *ht,
|
|||
/* bkt is always the head of the list, so it holds
|
||||
* the lock, which we need to preserve
|
||||
*/
|
||||
rcu_assign_pointer(*bkt, rht_ptr_locked(obj));
|
||||
rht_assign_locked(bkt, obj);
|
||||
|
||||
atomic_inc(&ht->nelems);
|
||||
if (rht_grow_above_75(ht, tbl))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue