[Cbe-oss-dev] [CVS sw] * Updated version of the 6 previous affinity patches, with changes related
benh at kernel.crashing.org
Sat Mar 24 08:24:59 EST 2007
> Here's a solution that may be more than you want. It provides locking
> around the assignment of the context to the spu structure. It doesn't
> provide a full solution to the NOSCHED - Affinity problem, because there
> is still a race condition in the allocation of NOSCHED context and the
> assignment of the context to an spu for scheduling purposes. It is a
> first step towards a solution. I don't think that you can come up with
> a solution to the larger problem based solely on atomic primitives.
> This patch avoids the immediate problem of taking a data storage
> interrupt for a non-protected reference.
> Haven't tested it yet. Wanted to get feedback first.
> Arnd, am I supposed to put my signed off here now.
Atomic primitives tend to introduce more problems than they solve
anyway... between barrier issues and tendency to just become a mess,
attempts at synchronizing with atomics rather than locks or mutexes are
often doomed. Thus I agree with your statement, using solely atomics to
fix the larger problem is probably not a good idea in the first place.
More information about the cbe-oss-dev