Messages in this thread | | | Date | Tue, 26 Mar 2019 13:03:20 +0800 | From | Herbert Xu <> | Subject | Re: [PATCH 3/4] rhashtable: use bit_spin_locks to protect hash bucket. |
| |
On Mon, Mar 25, 2019 at 04:05:39PM +1100, NeilBrown wrote: > > + * Sometimes we unlock a bucket by writing a new pointer there. In that > + * case we don't need to unlock, but we do need to reset state such as > + * local_bh. For that we have rht_unlocked(). This doesn't include > + * the memory barrier that bit_spin_unlock() provides, but rcu_assign_pointer() > + * will have provided that.
Hmm, are you sure that's enough? IIRC rcu_assign_pointer only provides a write barrier compared to the more complete (but one-way) barrier that a spin-lock provides.
Cheers, -- Email: Herbert Xu <herbert@gondor.apana.org.au> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
| |