diff options
| author | Ben Blum <bblum@andrew.cmu.edu> | 2012-07-17 20:40:40 -0400 |
|---|---|---|
| committer | Ben Blum <bblum@andrew.cmu.edu> | 2012-07-17 20:45:07 -0400 |
| commit | 4cf6b4d3b4ea5cd231ab96d82f5f8cd794e0b2c3 (patch) | |
| tree | 3f9ca49a7c78422148869b50df72f999c706cbe2 /src/rt/rust_task.h | |
| parent | d930d717e5f4557e47c9fd5bdca62a92f5cc8c38 (diff) | |
| download | rust-4cf6b4d3b4ea5cd231ab96d82f5f8cd794e0b2c3.tar.gz rust-4cf6b4d3b4ea5cd231ab96d82f5f8cd794e0b2c3.zip | |
Tasks should not hold a ref to their parent (Close #1789)
Diffstat (limited to 'src/rt/rust_task.h')
| -rw-r--r-- | src/rt/rust_task.h | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/src/rt/rust_task.h b/src/rt/rust_task.h index 8baa852378a..cae058d7227 100644 --- a/src/rt/rust_task.h +++ b/src/rt/rust_task.h @@ -122,6 +122,8 @@ rust_task_fail(rust_task *task, struct rust_task : public kernel_owned<rust_task> { + // FIXME(#1789) Refcounting no longer seems needed now that tasks don't + // ref their parents. I'll leave it in just in case... -- bblum RUST_ATOMIC_REFCOUNT(); rust_task_id id; @@ -193,9 +195,6 @@ private: rust_port_selector port_selector; - lock_and_signal supervisor_lock; - rust_task *supervisor; // Parent-link for failure propagation. - // Called when the atomic refcount reaches zero void delete_this(); @@ -237,7 +236,6 @@ public: // Only a pointer to 'name' is kept, so it must live as long as this task. rust_task(rust_sched_loop *sched_loop, rust_task_state state, - rust_task *spawner, const char *name, size_t init_stack_sz); @@ -279,9 +277,6 @@ public: // FIXME (#1868) (bblum): maybe this can be done at rust-level? void fail_sched_loop(); - // Disconnect from our supervisor. - void unsupervise(); - frame_glue_fns *get_frame_glue_fns(uintptr_t fp); void *calloc(size_t size, const char *tag); |
