summaryrefslogtreecommitdiffstats
path: root/sys/pc98/i386
diff options
context:
space:
mode:
authorkato <kato@FreeBSD.org>2001-09-12 08:15:24 +0000
committerkato <kato@FreeBSD.org>2001-09-12 08:15:24 +0000
commit9c673fcc995b39bd03df1bfb98cf4cc6fa30ce2f (patch)
tree4182b3956162b74ac12a9cde9033c10111a9ea3c /sys/pc98/i386
parent6e7368374a2683bc098be01dc2403d2c098c37b0 (diff)
downloadFreeBSD-src-9c673fcc995b39bd03df1bfb98cf4cc6fa30ce2f.zip
FreeBSD-src-9c673fcc995b39bd03df1bfb98cf4cc6fa30ce2f.tar.gz
Merged from sys/i386/i386/machdep.c revision 1.479.
Diffstat (limited to 'sys/pc98/i386')
-rw-r--r--sys/pc98/i386/machdep.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/sys/pc98/i386/machdep.c b/sys/pc98/i386/machdep.c
index f0ba824..c78aa589 100644
--- a/sys/pc98/i386/machdep.c
+++ b/sys/pc98/i386/machdep.c
@@ -307,7 +307,7 @@ osendsig(catcher, sig, mask, code)
int oonstack;
p = curproc;
- PROC_LOCK(p);
+ PROC_LOCK_ASSERT(p, MA_OWNED);
psp = p->p_sigacts;
regs = p->p_frame;
oonstack = sigonstack(regs->tf_esp);
@@ -341,7 +341,6 @@ osendsig(catcher, sig, mask, code)
SIGDELSET(p->p_sigcatch, SIGILL);
SIGDELSET(p->p_sigmask, SIGILL);
psignal(p, SIGILL);
- PROC_UNLOCK(p);
return;
}
@@ -435,6 +434,7 @@ osendsig(catcher, sig, mask, code)
regs->tf_fs = _udatasel;
load_gs(_udatasel);
regs->tf_ss = _udatasel;
+ PROC_LOCK(p);
}
#endif
@@ -453,11 +453,10 @@ sendsig(catcher, sig, mask, code)
int oonstack;
p = curproc;
- PROC_LOCK(p);
+ PROC_LOCK_ASSERT(p, MA_OWNED);
psp = p->p_sigacts;
#ifdef COMPAT_43
if (SIGISMEMBER(psp->ps_osigset, sig)) {
- PROC_UNLOCK(p);
osendsig(catcher, sig, mask, code);
return;
}
@@ -507,7 +506,6 @@ sendsig(catcher, sig, mask, code)
SIGDELSET(p->p_sigcatch, SIGILL);
SIGDELSET(p->p_sigmask, SIGILL);
psignal(p, SIGILL);
- PROC_UNLOCK(p);
return;
}
@@ -587,6 +585,7 @@ sendsig(catcher, sig, mask, code)
regs->tf_es = _udatasel;
regs->tf_fs = _udatasel;
regs->tf_ss = _udatasel;
+ PROC_LOCK(p);
}
/*
OpenPOWER on IntegriCloud