summaryrefslogtreecommitdiff
path: root/sys/kern/kern_sig.c
diff options
context:
space:
mode:
authorPhilip Guenthe <guenther@cvs.openbsd.org>2011-07-11 15:40:48 +0000
committerPhilip Guenthe <guenther@cvs.openbsd.org>2011-07-11 15:40:48 +0000
commit9d36a78df6815757d9e70d30a2c86159ecc0a7a7 (patch)
tree95784ef05743f932548f12cb7a59e5d59dde8d4d /sys/kern/kern_sig.c
parent4f69e977bd7d4a9b7d8480fa58774ca13beac905 (diff)
Revert art@'s moving around of the KERNEL_LOCK()/KERNEL_UNLOCK() calls,
as it causes hangs in some ports, including libsigsegv's configure script confirmed by krw@, landry@
Diffstat (limited to 'sys/kern/kern_sig.c')
-rw-r--r--sys/kern/kern_sig.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c
index 97870a3dff8..3ee7dc8bbcd 100644
--- a/sys/kern/kern_sig.c
+++ b/sys/kern/kern_sig.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: kern_sig.c,v 1.125 2011/07/09 05:31:26 matthew Exp $ */
+/* $OpenBSD: kern_sig.c,v 1.126 2011/07/11 15:40:47 guenther Exp $ */
/* $NetBSD: kern_sig.c,v 1.54 1996/04/22 01:38:32 christos Exp $ */
/*
@@ -682,11 +682,9 @@ void
trapsignal(struct proc *p, int signum, u_long code, int type,
union sigval sigval)
{
- struct sigacts *ps;
+ struct sigacts *ps = p->p_sigacts;
int mask;
- KERNEL_LOCK();
- ps = p->p_sigacts;
mask = sigmask(signum);
if ((p->p_flag & P_TRACED) == 0 && (ps->ps_sigcatch & mask) != 0 &&
(p->p_sigmask & mask) == 0) {
@@ -716,7 +714,6 @@ trapsignal(struct proc *p, int signum, u_long code, int type,
p->p_sigval = sigval;
ptsignal(p, signum, STHREAD);
}
- KERNEL_UNLOCK();
}
/*