Re: [RFC PATCH 5/6] implement per-cpu&per-domain state machinecall_srcu()

From: Peter Zijlstra
Date: Mon Mar 12 2012 - 16:26:08 EST


On Mon, 2012-03-12 at 11:32 -0700, Paul E. McKenney wrote:
> And another question I should have asked to begin with... Would each
> VMA have its own SRCU domain, or are you thinking in terms of one
> SRCU domain for all VMAs globally?

The latter, single domain for all objects.

> If the latter, that pushes pretty strongly for per-CPU SRCU callback
> lists.

Agreed. I was under the impression the proposed thing had this, but on
looking at it again it does not. Shouldn't be hard to add though.

> Which brings up srcu_barrier() scalability (and yes, I am working
> on rcu_barrier() scalability). One way to handle this at least initially
> is to have srcu_barrier() avoid enqueueing callbacks on CPUs whose
> callback lists are empty. In addition, if the loop over all CPUs is
> preemptible, then there should not be much in the way of realtime issues.

Why do we have rcu_barrier() and how is it different from
synchronize_rcu()?

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/