about summary refs log tree commit diff
path: root/src/rt/rust_scheduler.cpp
diff options
context:
space:
mode:
authorBrian Anderson <banderson@mozilla.com>2012-02-02 16:34:34 -0800
committerBrian Anderson <banderson@mozilla.com>2012-02-02 18:10:24 -0800
commit5449b886d34c1ddbba60986d56d6896543a6b87f (patch)
tree13816909f8a1c0b07213dd5c6472b47d1976280e /src/rt/rust_scheduler.cpp
parent3978fbff8b79d53de57d48473bde43aa533369fd (diff)
downloadrust-5449b886d34c1ddbba60986d56d6896543a6b87f.tar.gz
rust-5449b886d34c1ddbba60986d56d6896543a6b87f.zip
rt: Remove bogus task reaping from the scheduler
Diffstat (limited to 'src/rt/rust_scheduler.cpp')
-rw-r--r--src/rt/rust_scheduler.cpp18
1 files changed, 4 insertions, 14 deletions
diff --git a/src/rt/rust_scheduler.cpp b/src/rt/rust_scheduler.cpp
index 508c87d820d..5a6cbd241ae 100644
--- a/src/rt/rust_scheduler.cpp
+++ b/src/rt/rust_scheduler.cpp
@@ -288,20 +288,10 @@ rust_scheduler::start_main_loop() {
         reap_dead_tasks(id);
     }
 
-    DLOG(this, dom,
-         "terminated scheduler loop, reaping dead tasks ...");
-
-    while (dead_tasks.length() > 0) {
-        DLOG(this, dom,
-             "waiting for %d dead tasks to become dereferenced, "
-             "scheduler yielding ...",
-             dead_tasks.length());
-        log_state();
-        lock.unlock();
-        sync::yield();
-        lock.lock();
-        reap_dead_tasks(id);
-    }
+    A(this, newborn_tasks.is_empty(), "Should have no newborn tasks");
+    A(this, running_tasks.is_empty(), "Should have no running tasks");
+    A(this, blocked_tasks.is_empty(), "Should have no blocked tasks");
+    A(this, dead_tasks.is_empty(), "Should have no dead tasks");
 
     DLOG(this, dom, "finished main-loop %d", id);