about summary refs log tree commit diff
path: root/src/rt/rust_task_thread.h
AgeCommit message (Collapse)AuthorLines
2012-03-31rt: Rename rust_task_thread to rust_sched_loopBrian Anderson-185/+0
This class no longer represents a thread; it just schedules tasks.
2012-03-31rt: Extract rust_sched_launcher from rust_task_threadBrian Anderson-11/+2
rust_sched_launcher is actually responsible for setting up the thread and starting the loop. There will be other implementations that do not actually set up a new thread, in order to support scheduling tasks on the main OS thread.
2012-03-21rt: Stop using large stacks for the main taskBrian Anderson-2/+1
2012-03-18rt: Remove rust_task_thread::dead_tasksBrian Anderson-1/+1
2012-03-18rt: Remove rust_task_thread::newborn_tasksBrian Anderson-1/+0
2012-03-18rt: Convert rust_task_list to a typedefBrian Anderson-1/+2
2012-03-18rt: Don't store the name of the task state in rust_task_listBrian Anderson-0/+1
2012-03-18rt: Use an enum to represent the task stateBrian Anderson-6/+16
2012-03-17rt: Remove some bogus pthread settings from rust_task_threadBrian Anderson-1/+0
This is all handled by rust_thread, and 'true' isn't even a valid value to pass to pthread_attr_setdetachestate
2012-03-16Get rid of rust_crate_cache in the runtimeMarijn Haverbeke-33/+0
We are no longer generating dynamic tydescs or dicts. Issue #1982
2012-03-15rt: Remove remaining uses of rust_kernel::get_task_by_idBrian Anderson-2/+2
2012-03-05rt: Make the rust_task_thread lock privateBrian Anderson-2/+2
2012-03-05rt: Move transition from rust_task to rust_task_threadBrian Anderson-0/+4
2012-03-01rt: Make fields of rust_task_thread private where possibleBrian Anderson-30/+27
2012-03-01rt: rust_task_thread isn't ref countedBrian Anderson-1/+0
2012-02-27Revert "rt: Reconfigure the C stack for valgrind each time it's used"Brian Anderson-1/+0
This reverts commit 859e0256524a1f19ca0c79f518d2bb396355f174. This ended up not fixing the '0 bytes lost' problem and has some performance impact.
2012-02-14rt: Reconfigure the C stack for valgrind each time it's usedBrian Anderson-0/+1
2012-02-14rt: Don't allocate a C stack for tasks that already have oneBrian Anderson-1/+1
2012-02-09rt: Disable some expensive assertsBrian Anderson-0/+2
2012-02-09rt: Inline everything on the C-stack-switching pathBrian Anderson-0/+52
2012-02-09rt: Move rust_thread to its own filesBrian Anderson-0/+1
2012-02-09rt: Use rust_task_thread's C-stack pool for native callsBrian Anderson-0/+4
2012-02-09rt: Add methods to rust_task_thread for borrowing C stacksBrian Anderson-0/+11
2012-02-08rt: Change the lifecycle of tasks and schedulers for various reasonsBrian Anderson-0/+3
This is in preparation for giving schedulers their own life cycle separate from the kernel. Tasks must be deleted before their scheduler thread, so we can't let the scheduler exit before all its tasks have been cleaned up. In this scheme, the scheduler will unregister tasks with the kernel when they are reaped, then drop their ref on the task (there may still be others). When the task ref count hits zero, the task will request to be unregistered from the scheduler, which is responsible for deleting the task. Instead of having the kernel tell the scheduler to exit, let the scheduler decide when to exit. For now it will exit when all of its tasks are unregistered.
2012-02-03rt: Make isaac_init not a templateBrian Anderson-6/+0
2012-02-03rt: Clean up the way the kernel tracks tasksBrian Anderson-2/+2
2012-02-03rt: Extract rust_scheduler from rust_task_threadBrian Anderson-1/+2
2012-02-03rt: Rename rust_scheduler to rust_task_threadBrian Anderson-0/+150