summaryrefslogtreecommitdiff
path: root/sys/compat/linux/linux_termios.c
diff options
context:
space:
mode:
authorGrigoriy Orlov <gluk@cvs.openbsd.org>2001-06-20 23:23:15 +0000
committerGrigoriy Orlov <gluk@cvs.openbsd.org>2001-06-20 23:23:15 +0000
commitbf3dda9a4a215ab111a7688acf2488b033d2633f (patch)
treea76e2cfbbc30907c6aba85128eca85c968098ddb /sys/compat/linux/linux_termios.c
parentd56eede64774d87e208c1a59f08b1e556c8d5202 (diff)
Fix PR1826. tsleep in lf_setlock can return 0 if process was ptrace'd,
but not wakeup'ed. In this case one entry can be placed twice at list of blocked locks. As a result block list contain an entry which points to itself. lf_wakelock can't remove such an entry and system livelocks trying to remove a bad entry from block list. Other changes include: - repair debug functions and make vfs_lockf.c compilable with LOCKF_DEBUG - simplify debug printing and remove useless debugging - remove unnecessary casting, replace NOLOCKF with NULL - free -> FREE (use one form over the file) - convert list of blocked locks to use TAILQ_* macroses - lf_addblock() -> TAILQ_INSERT_TAIL - Fix bug in lf_findoverlap(): in old code if (end == -1) && (lf->lf_end == -1) && (lf->lf_start <= start) then lf_findoverlap() return 4 instead of 2 - work more carefully with pointers (probably fix one or two bugs) - use wakeup_one() - KNF
Diffstat (limited to 'sys/compat/linux/linux_termios.c')
0 files changed, 0 insertions, 0 deletions