summary refs log tree commit diff
path: root/src/rt/rust_task.cpp
AgeCommit message (Collapse)AuthorLines
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.
2012-02-01Revert "make boxes self-describing (fixes #1493)" until a newNiko Matsakis-8/+39
snapshot is prepared.
2012-02-01make boxes self-describing (fixes #1493)Niko Matsakis-39/+8
2012-02-01rt: Don't access fields on null supervisor taskBrian Anderson-2/+2
2012-01-29rt: Remove set_min_stackBrian Anderson-13/+1
2012-01-29rt: Make the initial segment of the main task's stack 1MBBrian Anderson-2/+3
This is a trick to fool microbenchmarks. Closes #1681
2012-01-11rt: Add RUST_MAX_STACK env var with 8MB defaultBrian Anderson-13/+26
Closes #1489
2012-01-09add rust_task_is_unwinding predicate and do not kill if already unwindingNiko Matsakis-11/+16
2012-01-09rt: Set Linux red zone to 20K againBrian Anderson-2/+2
With runtime logging on it smashes the stack
2012-01-06fix how we walk functions to match new closure fmtNiko Matsakis-7/+8
2012-01-06rewrite task testsNiko Matsakis-24/+19
2012-01-06simplify task implNiko Matsakis-27/+21
2012-01-06Revert "rt: Reduce mac red zone to 6K"Brian Anderson-2/+2
This reverts commit d499e739a1eb67e887f5756f9dfef17199a6d041.
2012-01-06rt: Reduce mac red zone to 6KBrian Anderson-2/+2
2012-01-06rt: Fail the scheduler immediately on task failure in win32Brian Anderson-0/+2
2012-01-01freebsd supportUser Jyyou-0/+10
2011-12-20Revert "wip"Brian Anderson-12/+0
This reverts commit aeadc6269ef76f4425a49d892ceac7ea311ef5c1.
2011-12-20wipBrian Anderson-0/+12
2011-12-20rt: Remove rust_task::grow. ObsoleteBrian Anderson-10/+0