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