Deadlock handling
There is a certain level of deadlock detection/avoidance built into
the record locking facility.
This deadlock handling provides the same level of protection granted
by the
/usr/group
standard lockf call.
This deadlock detection is only valid for processes that are locking
files or records on a single system.
Deadlocks can only potentially occur when the system is about to put a record
locking system call to sleep.
A search is made for constraint loops of processes that would cause
the system call to sleep indefinitely.
If such a situation is found, the locking system call will fail and set
errno to the deadlock error number.
If a process wishes to avoid the use of the system's deadlock detection,
it should set its locks using
F_SETLK
instead of
F_SETLKW.
Next topic:
Selecting advisory or mandatory locking
Previous topic:
Getting lock information
© 2005 The SCO Group, Inc. All rights reserved.
SCO OpenServer Release 6.0.0 -- 02 June 2005