Date: Mon, 4 Jun 2007 23:53:06 +0000 (UTC) From: Jeff Roberson <jeff@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/kern kern_clock.c Message-ID: <200706042353.l54Nr6X9074947@repoman.freebsd.org>
index | next in thread | raw e-mail
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
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200706042353.l54Nr6X9074947>
