Subject: kern/37093: itimer problems
To: None <,,>
From: None <>
List: netbsd-bugs
Date: 10/09/2007 13:05:01
>Number:         37093
>Category:       kern
>Synopsis:       itimer problems
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Oct 09 13:05:01 +0000 2007
>Originator:     Andrew Doran
>Release:        NetBSD 4.99.32
The NetBSD Project
itimers are fired from hardclock(). There are a few problems:

- itimer code run in process context has scant splsched() protection

- hardclock() is called w/o kernel_lock held and the code is not MP

- itimerfire() may try to send signals with ksiginfo, which will
  use ksiginfo_pool and thus the VM system above IPL_VM.

Code inspection.

- Defer sending signals to a soft interrupt.
- Spinlock the itimers.