about summary refs log tree commit diff
path: root/src/rt/rust_task.h
AgeCommit message (Collapse)AuthorLines
2012-07-12Rename runtime *_locked() and *_unlocked() fns to *_inner() (closes #2864)Ben Blum-4/+4
2012-07-11Unify state_lock + kill_lock -> lifecycle_lock (#2787)Ben Blum-9/+7
2012-07-11Linked failure in task.rs instead of rust_task.cpp (#1868, #1189)Ben Blum-2/+0
2012-07-11rust_task.h - fix disallow_kill & don't inherit rust_condBen Blum-2/+2
2012-07-10Handle failure conditions correctly in pipes.Eric Holk-1/+1
2012-07-06Pipes sleep and wake properly.Eric Holk-0/+16
2012-07-05make disallow_kill an int for nested unkillables (closes #2782)Ben Blum-1/+1
2012-06-27Tidy fixesBrian Anderson-2/+2
2012-06-28rt: Add task_local_data and related builtin calls (Closes #2680)Ben Blum-0/+17
2012-06-27More keyword paring and migration in runtime, docs, code modes.Graydon Hoare-1/+1
2012-06-21Tag all remaining FIXMEs with bugs. Install rule in tidy script to enforce this.Graydon Hoare-12/+14
2012-06-02rt: Improve docs for main, kernel, scheduler, and taskBrian Anderson-21/+48
2012-05-31rt: Refactor task failure to go through rust_task_failBrian Anderson-0/+15
This is the place to but a breakpoint. We will raise SIGINT here to break into the debugger.
2012-05-15rt: Make task killing synchronization possibly more correctBrian Anderson-3/+9
I could not come up with a test but this looks better to me.
2012-05-15core: Add task::unkillableBrian Anderson-0/+4
2012-04-03fix 'I don't know how C works'Jon Morton-0/+1
2012-04-03actually remove memory.h; include cleanupsJon Morton-1/+0
2012-04-03Refactor includes structure, getting rid of rust_internal.hJon Morton-5/+35
Many changes to code structure are included: - removed TIME_SLICE_IN_MS - removed sychronized_indexed_list - removed region_owned - kernel_owned move to kernel.h, task_owned moved to task.h - global configs moved to rust_globals.h - changed #pragma once to standard guard in rust_upcall.h - got rid of memory.h
2012-04-02rt: Add an assert to rust_get_current_taskBrian Anderson-0/+1
2012-04-02remove unneeded assert, move get_task_tls to sched_loopJon Morton-20/+2
2012-04-02Add global rust_get_current_taskJon Morton-11/+27
Previously two methods existed: rust_sched_loop::get_task and rust_task::get_task_from_tcb. Merge both of them into one, trying the faster one (tcb) first, and if that fails, the slower one from the tls.
2012-04-01replace assertion macros with plain assertsJon Morton-13/+12
2012-04-01Merge remote-tracking branch 'brson/mainthread'Brian Anderson-11/+11
Conflicts: src/rt/rust_sched_loop.cpp src/rt/rust_shape.cpp src/rt/rust_task.cpp
2012-03-31rt: Fix whitespaceBrian Anderson-1/+1
2012-03-31rt: Rename rust_task_thread to rust_sched_loopBrian Anderson-11/+11
This class no longer represents a thread; it just schedules tasks.
2012-03-22rt: Run resource destructors during cycle collectionBrian Anderson-0/+4
2012-03-21rt: Fix valgrind stack hintsBrian Anderson-15/+5
2012-03-21rt: Add rust_task::get_task_from_tcbBrian Anderson-6/+35
2012-03-21rt: Rename record_sp to record_sp_limitBrian Anderson-2/+2
2012-03-21rt: Inline a bunch of stack switching codeBrian Anderson-0/+143
2012-03-21rt: Don't switch to the C stack on the upcall_new_stack fast pathBrian Anderson-1/+4
2012-03-21rt: Don't swatch stacks during upcall_del_stackBrian Anderson-1/+2
2012-03-18rt: Use an enum to represent the task stateBrian Anderson-5/+5
2012-03-16Remove dynastack support from runtimeMarijn Haverbeke-3/+0
Issue #1982
2012-03-16Get rid of rust_crate_cache in the runtimeMarijn Haverbeke-2/+0
We are no longer generating dynamic tydescs or dicts. Issue #1982
2012-03-15core: Channels are just port idsBrian Anderson-8/+2
2012-03-15rt: Look up ports through a single port tableBrian Anderson-10/+0
Instead of a two-level lookup, just use one big table
2012-03-05rt: Make rust_port_detach less contentiousBrian Anderson-4/+4
It still utterly dominates some benchmarks with busy waiting, but at least it doesn't create lock contention while doing so.
2012-03-05rt: Make linked failure less prone to deadlockBrian Anderson-2/+3
Still a mess.
2012-03-05rt: Renome rust_task::lock to port_lockBrian Anderson-2/+2
2012-03-05rt: Move transition from rust_task to rust_task_threadBrian Anderson-2/+5
2012-03-05rt: Protect cond and cond_name with the state_lockBrian Anderson-3/+7
2012-03-05rt: Protect rust_task::state with a lockBrian Anderson-1/+5
2012-03-05rt: Protect rust_task::killed with a lockBrian Anderson-0/+2
2012-03-02rt: Protect rust_task::supervisor with a lockBrian Anderson-1/+3
2012-03-02rt: Always delete task stacks on the task threadBrian Anderson-0/+1
There's not a real race here, but it makes helgrind happy and is arguably less prone to future errrors.
2012-02-22rt: Switch to the C stack in reset_stack_limitBrian Anderson-0/+2
2012-02-16rt: Add rust_port_select functionBrian Anderson-0/+5
2012-02-14rt: Don't allocate a C stack for tasks that already have oneBrian Anderson-0/+1
2012-02-14rt: Don't kill tasks while they are in a callback from CBrian Anderson-2/+15