cvs commit: src/sys/kern kern_rwlock.c

Jeff Roberson jeff at
Fri Apr 4 10:00:47 UTC 2008

jeff        2008-04-04 10:00:46 UTC

  FreeBSD src repository

  Modified files:
    sys/kern             kern_rwlock.c 
   - Add sysctls at debug.rwlock to control the behavior of the speculative
     spinning when readers hold a lock.  This spinning is speculative because,
     unlike the write case, we can not test whether the owners are running.
   - Add speculative read spinning for readers who are blocked by pending
     writers while a read lock is still held.  This allows the thread to
     spin until the write lock succeeds after which it may spin until the
     writer has released the lock.  This prevents excessive context switches
     when readers and writers both hold the lock for brief periods.
  Sponsored by:   Nokia
  Revision  Changes    Path
  1.38      +26 -3     src/sys/kern/kern_rwlock.c

More information about the cvs-all mailing list