This is an old revision of the document!


Usable lock implementation with SX-semantics

The current sx(9) implementation has several problems that make it unusable in many areas:

  • Might sleep (cv_wait) on the shared lock acquisition
  • implicit, hardcoded priority order without starvation protection
  • …

Things to look at:

  • Solaris' rwlock
  • Use turnstiles instead of conditional variables
    • Priority propagation
    • No longer just one owner
    • shared/read locks might be acquired recursively

TBD

  • usable_lock_implementation_with_sx-semantics.1134169230.txt.gz
  • Last modified: 2005/12/09 23:00
  • by DmitriyMarchenko