Re: [patch] Real-Time Preemption, -RT-2.6.12-rc1-V0.7.41-07

Herbert Xu
2005-03-23T09:41:38Z

Paul E. McKenney <paulmck@us.ibm.com> wrote:
>
> +void rcu_read_unlock(void)
> +{
> + int cpu;
> +
> + if (--current->rcu_read_lock_nesting == 0) {
> + atomic_dec(&current->rcu_data->active_readers);
> + /*
> + * Check whether we have reached quiescent state.
> + * Note! This is only for the local CPU, not for
> + * current->rcu_data's CPU [which typically is the
> + * current CPU, but may also be another CPU].
> + */
> + cpu = get_cpu();
>
> And need an smp_mb() here, again for non-x86 CPUs.

The atomic_dec is already a barrier.

Cheers,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt