:I think there is another issue in the loop that tries to clear the :shared cached bits. : :We fail to get the lock if some CPU has its bit set and is owning :*another* spinlock (or none). It should presumably fail if still :holding the lock we're trying to get. Both of your patches look on the money to me. -Matt Matthew Dillon <dillon at backplane.com>