--- - branch: MAIN date: Thu Dec 15 03:42:33 UTC 2011 files: - new: '1.23' old: '1.22' path: src/sys/arch/usermode/dev/clock.c pathrev: src/sys/arch/usermode/dev/clock.c@1.23 type: modified - new: '1.55' old: '1.54' path: src/sys/arch/usermode/dev/cpu.c pathrev: src/sys/arch/usermode/dev/cpu.c@1.55 type: modified - new: '1.41' old: '1.40' path: src/sys/arch/usermode/include/thunk.h pathrev: src/sys/arch/usermode/include/thunk.h@1.41 type: modified - new: '1.47' old: '1.46' path: src/sys/arch/usermode/usermode/thunk.c pathrev: src/sys/arch/usermode/usermode/thunk.c@1.47 type: modified id: 20111215T034233Z.cef8bad6fb67f4e5d95e038a74e49868c44d23c6 log: | Improve usermode timecounter. It's unreasonable to assume that we'll get 100 "SIGALRM" per second with an ITIMER_REAL at 100Hz on a HZ=100 host as the timer may expire before a pending signal has been delivered. Instead of setitimer, use timer_create + timer_settime and from our intr handler use timer_getoverrun to determine how many ticks we have missed. module: src subject: 'CVS commit: src/sys/arch/usermode' unixtime: '1323920553' user: jmcneill