CVSROOT:        /cvs
Module name:    src
Changes by:     [email protected]   2019/05/06 10:29:19

Modified files:
        sys/kern       : vfs_lockf.c 

Log message:
Bring back lockf deadlock detection from the dead. Back in 2007, the deadlock
detection broke while changing the owner of a lock from struct proc to struct
filedesc/file. Instead of keeping track of the owning proc for each lock,
introduce a new list for all pending blocked locks. This list is scanned before
waiting on a blocking lock in order to determine if sleeping would cause a
deadlock.

The new implementation is serialized by the recently added locking to the same
subsystem, meaning that acquiring the kernel lock is no longer necessary.

ok visa@

Reply via email to