summaryrefslogtreecommitdiffstats
path: root/sys/kern/sched_bsd.c
diff options
context:
space:
mode:
authorvisa <visa@openbsd.org>2019-11-02 05:31:20 +0000
committervisa <visa@openbsd.org>2019-11-02 05:31:20 +0000
commitdfa1de3e618fc84112edc97684a632dc38416c64 (patch)
tree6adbc7d6d7e6b3ff2876fc3e63b6f09aac9440f2 /sys/kern/sched_bsd.c
parentswitch ASN1_STRING_data() with constified ASN1_STRING_get0_data() (diff)
downloadwireguard-openbsd-dfa1de3e618fc84112edc97684a632dc38416c64.tar.xz
wireguard-openbsd-dfa1de3e618fc84112edc97684a632dc38416c64.zip
Move dead procs to the reaper queue immediately after context switch.
This eliminates a forced context switch to the idle proc. In addition, sched_exit() no longer needs to sum proc runtime because mi_switch() will do it. OK mpi@ a while ago
Diffstat (limited to 'sys/kern/sched_bsd.c')
-rw-r--r--sys/kern/sched_bsd.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/kern/sched_bsd.c b/sys/kern/sched_bsd.c
index c237dac5bad..8f988ae7c57 100644
--- a/sys/kern/sched_bsd.c
+++ b/sys/kern/sched_bsd.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sched_bsd.c,v 1.57 2019/11/01 20:58:01 mpi Exp $ */
+/* $OpenBSD: sched_bsd.c,v 1.58 2019/11/02 05:31:20 visa Exp $ */
/* $NetBSD: kern_synch.c,v 1.37 1996/04/22 01:38:37 christos Exp $ */
/*-
@@ -413,6 +413,7 @@ mi_switch(void)
SCHED_ASSERT_UNLOCKED();
+ dispatch_deadproc();
smr_idle();
/*