rt: Remove rust_task::notify_tasks_wating_to_join

This commit is contained in:
Brian Anderson
2011-11-16 16:58:52 -08:00
parent 342dc21d2c
commit bae817efe6
3 changed files with 0 additions and 22 deletions

View File

@@ -137,7 +137,6 @@ rust_scheduler::reap_dead_tasks(int id) {
task->lock.lock(); task->lock.lock();
// Make sure this task isn't still running somewhere else... // Make sure this task isn't still running somewhere else...
if (task->can_schedule(id)) { if (task->can_schedule(id)) {
I(this, task->tasks_waiting_to_join.is_empty());
DLOG(this, task, DLOG(this, task,
"deleting unreferenced dead task %s @0x%" PRIxPTR, "deleting unreferenced dead task %s @0x%" PRIxPTR,
task->name, task); task->name, task);

View File

@@ -197,7 +197,6 @@ void task_start_wrapper(spawn_args *a)
#endif #endif
} else { } else {
task->lock.lock(); task->lock.lock();
task->notify_tasks_waiting_to_join();
task->lock.unlock(); task->lock.unlock();
task->yield(1); task->yield(1);
} }
@@ -324,7 +323,6 @@ rust_task::conclude_failure() {
unblock(); unblock();
fail_parent(); fail_parent();
failed = true; failed = true;
notify_tasks_waiting_to_join();
yield(4); yield(4);
} }
@@ -356,19 +354,6 @@ rust_task::unsupervise()
propagate_failure = false; propagate_failure = false;
} }
void
rust_task::notify_tasks_waiting_to_join() {
while (tasks_waiting_to_join.is_empty() == false) {
LOG(this, task, "notify_tasks_waiting_to_join: %d",
tasks_waiting_to_join.size());
rust_task *waiting_task = 0;
tasks_waiting_to_join.pop(&waiting_task);
if (waiting_task->blocked() == true) {
waiting_task->wakeup(this);
}
}
}
frame_glue_fns* frame_glue_fns*
rust_task::get_frame_glue_fns(uintptr_t fp) { rust_task::get_frame_glue_fns(uintptr_t fp) {
fp -= sizeof(uintptr_t); fp -= sizeof(uintptr_t);

View File

@@ -99,9 +99,6 @@ rust_task : public kernel_owned<rust_task>, rust_cond
// that location before waking us up. // that location before waking us up.
uintptr_t* rendezvous_ptr; uintptr_t* rendezvous_ptr;
// List of tasks waiting for this task to finish.
array_list<rust_task *> tasks_waiting_to_join;
// This flag indicates that a worker is either currently running the task // This flag indicates that a worker is either currently running the task
// or is about to run this task. // or is about to run this task.
int running_on; int running_on;
@@ -184,9 +181,6 @@ rust_task : public kernel_owned<rust_task>, rust_cond
// Disconnect from our supervisor. // Disconnect from our supervisor.
void unsupervise(); void unsupervise();
// Notify tasks waiting for us that we are about to die.
void notify_tasks_waiting_to_join();
frame_glue_fns *get_frame_glue_fns(uintptr_t fp); frame_glue_fns *get_frame_glue_fns(uintptr_t fp);
rust_crate_cache * get_crate_cache(); rust_crate_cache * get_crate_cache();