CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2026/06/12 06:20:25
Modified files:
sys/kern : vfs_vnops.c
Log message:
sys/vfs: wake vclean after failed vnode lock attempts
vclean() sets VXLOCK and waits for v_lockcount to drain before taking
the vnode lock with LK_DRAIN. vn_lock() already woke that waiter when a
racing VOP_LOCK() succeeded, noticed VXLOCK, and had to drop the lock
again.
Do the same wakeup when the racing VOP_LOCK() fails. A failed attempt
still decrements v_lockcount, and if it was the last in flight attempt,
vclean() must be notified that the drain condition is satisfied.