cvs commit: src/sys/dev/syscons/apm apm_saver.c src/sys/i386/bios apm.c apm.h

Gleb Smirnoff glebius at FreeBSD.org
Wed May 31 21:27:53 PDT 2006


On Wed, May 31, 2006 at 11:23:01AM -0400, John Baldwin wrote:
J> Nah, that was phk's other timekeeping code to see which timeouts take a long 
J> time to execute.  The THREAD_NO_SLEEPING() stuff was added just before 6.0 
J> was released and replaced a couple of "special" mutexes that were held just 
J> to provoke WITNESS warnings.

To take a long time to execute one doesn't need to sleep, it can also do
a lot of job.

I know at least two examples of heavy callouts: dummynet and pf. Under
heavy traffic both subsystems process a lot of packets during one callout.
I have patches to move their job to a separate taskqueue. The dummynet
patch needs some testing and the pf patch waits for Max Laier to decide
what to chose: taskqueue API or kthread_create() as newest pf in OpenBSD
does.

-- 
Totus tuus, Glebius.
GLEBIUS-RIPN GLEB-RIPE


More information about the cvs-all mailing list