summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_exit.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/kern/kern_exit.c')
-rw-r--r--sys/kern/kern_exit.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/sys/kern/kern_exit.c b/sys/kern/kern_exit.c
index 1725d54..572aab3 100644
--- a/sys/kern/kern_exit.c
+++ b/sys/kern/kern_exit.c
@@ -67,6 +67,7 @@
#ifdef KTRACE
#include <sys/ktrace.h>
#endif
+#include <sys/ksiginfo.h>
#include <vm/vm.h>
#include <vm/vm_extern.h>
@@ -244,7 +245,7 @@ exit1(td, rv)
*/
PROC_LOCK(p);
p->p_flag &= ~(P_TRACED | P_PPWAIT);
- SIGEMPTYSET(p->p_siglist);
+ signal_delete(p, NULL, 0);
PROC_UNLOCK(p);
if (timevalisset(&p->p_realtimer.it_value))
callout_stop(&p->p_itcallout);
@@ -473,6 +474,12 @@ exit1(td, rv)
*/
if (p->p_flag & P_KTHREAD)
wakeup(p);
+
+ /*
+ * And now, kill off its signals...
+ */
+ signal_delete(p, NULL, 0);
+
PROC_UNLOCK(p);
/*
OpenPOWER on IntegriCloud