CVSROOT: /cvs Module name: src Changes by: chel...@cvs.openbsd.org 2024/01/14 18:15:37
Modified files: sys/kern : kern_clockintr.c sys/sys : clockintr.h Log message: clockintr: move CLST_IGNORE_REQUESTS from cl_flags to cq_flags In the near future, we will add support for destroying clockintr objects. When this happens, it will no longer be safe to dereference the pointer to the expired clockintr during the dispatch loop in clockintr_dispatch() after reentering cq_mtx. This means we will not be able to safely check for the CLST_IGNORE_REQUESTS flag. So replace the CLST_IGNORE_REQUESTS flag in cl_flags with the CQ_IGNORE_REQUESTS flag in cq_flags. The semantics are the same. Both cl_flags and cq_flags are protected by cq_mtx. Note that we cannot move the CLST_IGNORE_REQUESTS flag to cr_flags in struct clockrequest: that member is owned by the dispatching CPU and is not mutated with atomic operations.