about summary refs log tree commit diff
path: root/src/rt/rust_task.cpp
AgeCommit message (Collapse)AuthorLines
2012-03-05rt: Make the rust_task_thread lock privateBrian Anderson-2/+0
2012-03-05rt: Move transition from rust_task to rust_task_threadBrian Anderson-20/+10
2012-03-05rt: Protect cond and cond_name with the state_lockBrian Anderson-12/+12
2012-03-05rt: Don't take the task lock on state transitionsBrian Anderson-6/+0
2012-03-05rt: Protect rust_task::state with a lockBrian Anderson-2/+8
2012-03-05rt: Protect rust_task::killed with a lockBrian Anderson-4/+11
2012-03-02rt: Checking port_table.is_empty() requires a lockBrian Anderson-1/+6
2012-03-02rt: Protect rust_task::supervisor with a lockBrian Anderson-4/+10
2012-03-02rt: Always delete task stacks on the task threadBrian Anderson-7/+10
There's not a real race here, but it makes helgrind happy and is arguably less prone to future errrors.
2012-02-27rt: Don't zero new stacksBrian Anderson-2/+2
2012-02-24add an option to the final cc so that it prints out/logs unreclaimed ptrsNiko Matsakis-1/+1
2012-02-24Revert "rt: Cut the red zone to 10K on mac"Brian Anderson-2/+2
This reverts commit cb7022cfc20b89947ff3fa96d4617f9fe64d2f3e.
2012-02-23rt: Cut the red zone to 10K on macBrian Anderson-2/+2
2012-02-23rt: Cut the red zone to 2K on linuxBrian Anderson-2/+2
2012-02-22rt: Cut the red zone to 4K on linuxBrian Anderson-2/+2
2012-02-22rt: Switch to the C stack in reset_stack_limitBrian Anderson-5/+22
2012-02-22rt: Stop logging on the Rust stack. Closes #1478Brian Anderson-1/+5
2012-02-14rt: Don't kill tasks while they are in a callback from CBrian Anderson-3/+9
2012-02-10rt: Call register/deregister_valgrind_stack from the stack con/destructorsBrian Anderson-3/+0
2012-02-10rt: Extract prepare_valgrind_stack from register_valgrind_stackBrian Anderson-0/+2
2012-02-10rt: Rename config_valgrind_stack to register_valgrind_stack, etcBrian Anderson-3/+3
2012-02-10rt: Move the addition of the stack canary into create_stackBrian Anderson-1/+0
2012-02-09rt: Disable some expensive assertsBrian Anderson-0/+30
2012-02-09rt: Inline everything on the C-stack-switching pathBrian Anderson-102/+0
2012-02-09rt: Add more stack-switching commentaryBrian Anderson-0/+5
2012-02-09rt: Add upcall_call_shim_on_rust_stackBrian Anderson-2/+38
2012-02-09rt: Use rust_task_thread's C-stack pool for native callsBrian Anderson-3/+36
2012-02-09rt: Move more setup code into create_stackBrian Anderson-2/+0
2012-02-09rt: Add rust_task::call_on_c_stackBrian Anderson-2/+19
2012-02-09rt: Rename call_shim_on_c_stack to call_and_change_stacksBrian Anderson-1/+1
2012-02-09rt: Add constructors and destructors for stacksBrian Anderson-3/+3
2012-02-09rt: Move some stack manipulation functions into rust_taskBrian Anderson-137/+130
2012-02-09rt: Rename new_stack to next_stack, del_stack to prev_stackBrian Anderson-2/+6
2012-02-09rt: Remove rust_task::rust_spBrian Anderson-2/+1
2012-02-09rt: Remove rust_task_user structBrian Anderson-12/+10
2012-02-09rt: Add a function for configuring task notificationBrian Anderson-0/+6
2012-02-09rt: Begin moving stack-building functions to rust_stack.cppBrian Anderson-41/+0
2012-02-08rt: Change the lifecycle of tasks and schedulers for various reasonsBrian Anderson-1/+4
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: Add sanity checks when we hit the max task/port idBrian Anderson-0/+1
2012-02-03rt: Clean up the way the kernel tracks tasksBrian Anderson-2/+2
2012-02-03rt: Add a field to rust_task to hold its schedulerBrian Anderson-0/+1
2012-02-03rt: Rename rust_scheduler to rust_task_threadBrian Anderson-60/+60
2012-02-03Remove experimental GC codeMarijn Haverbeke-2/+2
It's been sitting unused long enough to have bitrotted completely.
2012-02-02rt: Do all signalling while holding a lockBrian Anderson-8/+2
This will matter once the scheduler is changed to not wake up on a timer
2012-02-02rt: Remove rust_task::can_schedule. Does nothingBrian Anderson-5/+0
2012-02-02rt: Remove running_on flag. Does nothingBrian Anderson-3/+1
2012-02-02rt: Remove task pinning. Does nothingBrian Anderson-17/+1
2012-02-02rt: Rename task_sleep intrinsic to task_yield. Remove usec paramBrian Anderson-1/+1
2012-02-02rt: Remove yield timersBrian Anderson-4/+1
2012-02-01make boxes self-describing (fixes #1493)" (take 2)Niko Matsakis-39/+8
this will be used to generate a new snapshot.