CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2025/05/11 14:03:08
Modified files:
sys/kern : kern_event.c
Log message:
Make EVFILT_TIMER mp-safe.
Introduce 'filt_timer' opaque structure to keep the timeout(9), the
`ft_reschedule' flag and protecting mutex(9). The timeout(9) handler
could reschedule itself, so `ft_reschedule' flag prevents this on
timeout canceling.
Note, this diff keeps the timeout handler under kernel lock. We don't
touch kernel lock while we perform timeout_add(9) or
timeout_del_barier(9) on non mp-safe timeouts, so kevent(2) will not
stuck in kernel lock, meanwhile the timeout firing will take kernel
lock in most cases even for mp-safe timeouts.
ok visa