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.

Reply via email to