Module Name: src Committed By: thorpej Date: Sat Dec 5 18:17:01 UTC 2020
Modified Files: src/sys/kern: init_main.c kern_clock.c kern_exec.c kern_exit.c kern_time.c src/sys/sys: param.h proc.h timevar.h Log Message: Refactor interval timers to make it possible to support types other than the BSD/POSIX per-process timers: - "struct ptimer" is split into "struct itimer" (common interval timer data) and "struct ptimer" (per-process timer data, which contains a "struct itimer"). - Introduce a new "struct itimer_ops" that supplies information about the specific kind of interval timer, including it's processing queue, the softint handle used to schedule processing, the function to call when the timer fires (which adds it to the queue), and an optional function to call when the CLOCK_REALTIME clock is changed by a call to clock_settime() or settimeofday(). - Rename some fuctions to clearly identify what they're operating on (ptimer vs itimer). - Use kmem(9) to allocate ptimer-related structures, rather than having dedicated pools for them. Welcome to NetBSD 9.99.77. To generate a diff of this commit: cvs rdiff -u -r1.533 -r1.534 src/sys/kern/init_main.c cvs rdiff -u -r1.142 -r1.143 src/sys/kern/kern_clock.c cvs rdiff -u -r1.503 -r1.504 src/sys/kern/kern_exec.c cvs rdiff -u -r1.290 -r1.291 src/sys/kern/kern_exit.c cvs rdiff -u -r1.206 -r1.207 src/sys/kern/kern_time.c cvs rdiff -u -r1.680 -r1.681 src/sys/sys/param.h cvs rdiff -u -r1.367 -r1.368 src/sys/sys/proc.h cvs rdiff -u -r1.44 -r1.45 src/sys/sys/timevar.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.