cvs commit: src/sys/kern kern_exit.c kern_sig.c
Matthew Dillon
dillon at crater.dragonflybsd.org
Fri Jun 29 19:33:38 PDT 2007
dillon 2007/06/29 19:33:04 PDT
DragonFly src repository
Modified files:
sys/kern kern_exit.c kern_sig.c
Log:
Move the P_WEXIT check from lwpsignal() to kern_kill(). That is, disallow
signals to exiting processes but allow signals to threads that have not gone
through the exit interlock yet. This allows exit1() to interlock the process
and still signal its LWPs.
Fix a bug in exit1() which was improperly using lwp_signotify() to wake up
LWPs to force the to exit. This function is basically a NOP if there are
no signals pending to the LWP. Send a real SIGKILL to the LWP instead.
This fixes a bug where vkernels get stuck in an exiting state and cannot be
killed.
Reported-by: Joe Talbott <josepht at cstone.net>
Revision Changes Path
1.81 +2 -2 src/sys/kern/kern_exit.c
1.80 +15 -4 src/sys/kern/kern_sig.c
http://www.dragonflybsd.org/cvsweb/src/sys/kern/kern_exit.c.diff?r1=1.80&r2=1.81&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/kern_sig.c.diff?r1=1.79&r2=1.80&f=u
More information about the Commits
mailing list