summaryrefslogtreecommitdiffstats
path: root/sys/kern
diff options
context:
space:
mode:
authorjulian <julian@FreeBSD.org>2003-01-20 03:41:04 +0000
committerjulian <julian@FreeBSD.org>2003-01-20 03:41:04 +0000
commit3d76eee5a28c413321a315a09fd31998734093b2 (patch)
tree0ed2e60034aeb6dd8d668e33c2591bfc5bb37597 /sys/kern
parentb584d46930f2b04c4ed1b7af03186985983b4ac5 (diff)
downloadFreeBSD-src-3d76eee5a28c413321a315a09fd31998734093b2.zip
FreeBSD-src-3d76eee5a28c413321a315a09fd31998734093b2.tar.gz
Remove a KASSERT that can now happen and add a missing setrunnable.
Diffstat (limited to 'sys/kern')
-rw-r--r--sys/kern/kern_kse.c2
-rw-r--r--sys/kern/kern_switch.c2
-rw-r--r--sys/kern/kern_thread.c2
3 files changed, 4 insertions, 2 deletions
diff --git a/sys/kern/kern_kse.c b/sys/kern/kern_kse.c
index ff34488..31ed03e 100644
--- a/sys/kern/kern_kse.c
+++ b/sys/kern/kern_kse.c
@@ -1455,6 +1455,8 @@ justreturn:
FOREACH_KSE_IN_GROUP(kg, ke) {
if (TD_IS_IDLE(ke->ke_owner)) {
TD_CLR_IDLE(ke->ke_owner);
+ setrunnable(ke->ke_owner);
+ break;
}
}
}
diff --git a/sys/kern/kern_switch.c b/sys/kern/kern_switch.c
index d1d7070..6651f70 100644
--- a/sys/kern/kern_switch.c
+++ b/sys/kern/kern_switch.c
@@ -222,8 +222,6 @@ kse_reassign(struct kse *ke)
* can not borrow KSEs.
*/
if (loaned) {
- KASSERT((original->td_standin == NULL),
- ("kse_reassign: borrower still has standin thread"));
TD_CLR_LOAN(owner);
ke->ke_thread = owner;
original->td_kse = NULL; /* give it amnesia */
diff --git a/sys/kern/kern_thread.c b/sys/kern/kern_thread.c
index ff34488..31ed03e 100644
--- a/sys/kern/kern_thread.c
+++ b/sys/kern/kern_thread.c
@@ -1455,6 +1455,8 @@ justreturn:
FOREACH_KSE_IN_GROUP(kg, ke) {
if (TD_IS_IDLE(ke->ke_owner)) {
TD_CLR_IDLE(ke->ke_owner);
+ setrunnable(ke->ke_owner);
+ break;
}
}
}
OpenPOWER on IntegriCloud