Re: [TOMOYO 05/15](repost) Domain transition handler functions.

Peter Zijlstra
2007-10-03T13:30:25Z

On Wed, 2007-10-03 at 22:04 +0900, Tetsuo Handa wrote:
> James Morris wrote:
> > I'm pretty sure that the singly linked list idea has been rejected a few
> > times. Just use the existing API.
> Too bad...
>
> Well, is there a way to avoid read_lock when reading list?
>
> Currently, TOMOYO Linux avoids read_lock, on the assumption that
> (1) First, ptr->next is initialized with NULL.
> (2) Later, ptr->next is assigned non-NULL address.
> (3) Assigning to ptr->next is done atomically.

(4) wmb after asigning ptr->next
(5) rmb before reading ptr->next

But please do look at the various rcu list primitives. RCU allows one to
avoid non-exclusive locks in many cases.

non-exclusive locks are evil, they must all die...