Subject: CVS commit: src/sys/kern
To: None <source-changes@netbsd.org>
From: Nathan J Williams <nathanw@netbsd.org>
List: source-changes
Date: 05/28/2003 22:17:21
Module Name: src
Committed By: nathanw
Date: Wed May 28 22:17:21 UTC 2003
Modified Files:
src/sys/kern: kern_sa.c
Log Message:
Put the tsleep() call in sa_yield() inside a while loop that tests
whether there is anything to do - almost as if it were a predicate
test outside of a condition wait. This prevents returning to userland
when tsleep() has woken up spuriously, such as from a signal that was
caught and then removed by a tracing process.
Kills off some double-stops in GDB due to signals as well as a couple
of pthread__idle assertions when detaching from a process.
XXX stopping inside tsleep, via CURSIG(), is evil.
To generate a diff of this commit:
cvs rdiff -r1.15 -r1.16 src/sys/kern/kern_sa.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.