cvs commit: src/sys/kern kern_clock.c

Jeff Roberson jeff at FreeBSD.org
Mon Jun 4 23:53:06 UTC 2007


jeff        2007-06-04 23:53:06 UTC

  FreeBSD src repository

  Modified files:
    sys/kern             kern_clock.c 
  Log:
  Commit 5/14 of sched_lock decomposition.
   - Protect the cp_time tick counts with atomics instead of a global lock.
     There will only be one atomic per tick and this allows all processors
     to execute softclock concurrently.
   - In softclock, protect access to rusage and td_*tick data with the
     thread_lock(), expanding the scope of the thread lock over the whole
     function.
   - Do some creative re-arranging in hardclock() to avoid excess locking.
   - Protect the p_timer fields with the per-process spinlock.
  
  Tested by:      kris, current@
  Tested on:      i386, amd64, ULE, 4BSD, libthr, libkse, PREEMPTION, etc.
  Discussed with: kris, attilio, kmacy, jhb, julian, bde (small parts each)
  
  Revision  Changes    Path
  1.200     +33 -35    src/sys/kern/kern_clock.c


More information about the cvs-all mailing list