CVSROOT: /cvs Module name: src Changes by: v...@cvs.openbsd.org 2020/02/05 10:03:13
Modified files: sys/kern : kern_descrip.c kern_event.c Log message: Move kernel locking inside knote_fdclose() from finishdup() and fdrelease(). This makes the upper layer of file descriptor closing free of KERNEL_LOCK() when the process does not use kqueue. The kernel locking around fdremove() and knote_fdclose() is no longer needed because kqueue_register() checks if there has been a race with file descriptor close. Moreover, the locking became ineffective against these races when filterops callbacks were allowed to sleep. OK anton@, mpi@