summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_kse.c
diff options
context:
space:
mode:
authordavidxu <davidxu@FreeBSD.org>2003-02-17 14:54:57 +0000
committerdavidxu <davidxu@FreeBSD.org>2003-02-17 14:54:57 +0000
commit6a2061cb8b76a06769bffc230b3573bb93bdb8a8 (patch)
tree8b7bdfad89d32e87b38e90a1551f30f1c50ca961 /sys/kern/kern_kse.c
parent0330c190211959d649ab98e1e3d6a3e2071c6a1e (diff)
downloadFreeBSD-src-6a2061cb8b76a06769bffc230b3573bb93bdb8a8.zip
FreeBSD-src-6a2061cb8b76a06769bffc230b3573bb93bdb8a8.tar.gz
Further fix PS_NEEDSIGCHK
Diffstat (limited to 'sys/kern/kern_kse.c')
-rw-r--r--sys/kern/kern_kse.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/kern/kern_kse.c b/sys/kern/kern_kse.c
index b682320..235e8d8 100644
--- a/sys/kern/kern_kse.c
+++ b/sys/kern/kern_kse.c
@@ -484,6 +484,8 @@ kse_release(struct thread *td, struct kse_release_args *uap)
mtx_lock_spin(&sched_lock);
/* Change OURSELF to become an upcall. */
td->td_flags = TDF_UPCALLING;
+ if (p->p_sflag & PS_NEEDSIGCHK)
+ td->td_flags |= TDF_ASTPENDING;
if ((td->td_upcall->ku_flags & KUF_DOUPCALL) == 0 &&
(kg->kg_completed == NULL)) {
kg->kg_upsleeps++;
OpenPOWER on IntegriCloud