Messages in this thread | | | Date | Sat, 03 Apr 2010 13:51:38 -0400 | From | john cooper <> | Subject | Re: RFC: Ideal Adaptive Spinning Conditions |
| |
Peter W. Morreale wrote:
> Right. This was *critical* for the adaptive rtmutex. Note in the RT > patch, everybody spins as long as the current owner is on CPU. > > FWIW, IIRC, Solaris has a heuristic approach where incoming tasks spin > for a period of time before going to sleep. (Cray UINCOS did the same)
IIRC Solaris mutexes are declared either simple spin or adaptive, an acquisition attempt of the latter only checking the hold status of the mutex and if held the owner's run status before making the spin vs. block decision.
I don't believe mixing of the two mutex types within a given path was permissible as a previously acquired simple spin mutex could remain held when a subsequent adaptive mutex decided to block. Although presumably an elevated IPL could have been sufficient to flag that scenario.
-john
-- john.cooper@third-harmonic.com
| |