| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2013-08-09 | Remove the C++ runtime. Sayonara | Brian Anderson | -91/+0 | |
| 2012-12-15 | Whitespace | Brian Anderson | -1/+1 | |
| 2012-12-15 | Made a bunch more classes non-copyable | Jesse Jones | -0/+5 | |
| 2012-12-10 | Add license boilerplate to more files. | Graydon Hoare | -0/+10 | |
| 2012-09-19 | core: Allocate threads on demand, not on scheduler startup | Philipp Brüschweiler | -7/+6 | |
| API change: rust_kernel::create_scheduler() or rust_scheduler::rust_scheduler() respecitevly now take ownership of the launch factory argument, it is needed to create new threads on demand. Also renames rustrt::sched_threads() to rustrt::rust_sched_threads() for consistency. Added rustrt::rust_max_sched_threads() to return the maximal number of scheduled threads of the current scheduler. Fixes #3493. | ||||
| 2012-07-20 | [3/4 for #2365, #2671] Fix exit/kill race with scheds during rust_kernel::fail | Ben Blum | -1/+5 | |
| 2012-07-20 | [1/4 for #2365, #2671] Fix create/kill race with schedulers and tasks during ↵ | Ben Blum | -3/+5 | |
| rust_kernel::fail | ||||
| 2012-06-21 | Tag all remaining FIXMEs with bugs. Install rule in tidy script to enforce this. | Graydon Hoare | -1/+1 | |
| 2012-06-02 | rt: Improve docs for main, kernel, scheduler, and task | Brian Anderson | -0/+7 | |
| 2012-04-03 | Merge remote-tracking branch 'brson/mainthread' | Brian Anderson | -5/+13 | |
| Conflicts: src/rt/rust_kernel.cpp src/rt/rust_scheduler.cpp src/rt/rust_scheduler.h | ||||
| 2012-04-03 | rt: Fix bugs in the osmain scheduler | Brian Anderson | -0/+1 | |
| 2012-04-03 | Refactor includes structure, getting rid of rust_internal.h | Jon Morton | -1/+3 | |
| 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-02 | rt: Run a single-threaded scheduler on the main thread | Brian Anderson | -1/+2 | |
| 2012-04-01 | remove rust_srv | Jon Morton | -3/+1 | |
| 2012-04-01 | rt: Introduce rust_sched_launcher_factory. Sorry, I need one | Brian Anderson | -2/+4 | |
| 2012-04-01 | rt: Allow some schedulers to stay alive even without tasks to execute | Brian Anderson | -3/+7 | |
| 2012-04-01 | Merge remote-tracking branch 'brson/mainthread' | Brian Anderson | -3/+5 | |
| Conflicts: src/rt/rust_sched_loop.cpp src/rt/rust_shape.cpp src/rt/rust_task.cpp | ||||
| 2012-03-31 | rt: Fix whitespace | Brian Anderson | -1/+1 | |
| 2012-03-31 | rt: Extract rust_sched_launcher from rust_task_thread | Brian Anderson | -3/+5 | |
| 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-31 | Choose task thread in rust_scheduler by round robin | Jon Morton | -2/+2 | |
| Remove the random context from rust_scheduler and use a simple round robin system to choose which thread a new task gets put on. Also, some incorrect tab indents around scoped blocks were fixed. | ||||
| 2012-03-21 | rt: Stop using large stacks for the main task | Brian Anderson | -3/+0 | |
| 2012-03-15 | rt: Remove remaining uses of rust_kernel::get_task_by_id | Brian Anderson | -4/+4 | |
| 2012-02-27 | rt: Change the way the kernel exits to avoid pthread leaks | Brian Anderson | -0/+1 | |
| This makes the kernel join every scheduler thread before exiting in order to ensure that all threads are completely terminated before the process exits. On my machine, for 32-bit targets, this was causing regular valgrind errors. | ||||
| 2012-02-08 | rt: Export a scheduler API | Brian Anderson | -0/+2 | |
| 2012-02-08 | rt: Change the lifecycle of tasks and schedulers for various reasons | Brian Anderson | -1/+6 | |
| 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-08 | rt: Introduce scheduler ids | Brian Anderson | -1/+4 | |
| 2012-02-08 | rt: Change the scheme used for terminating the kernel | Brian Anderson | -1/+9 | |
| Instead of joining on the scheduler threads, instead keep a count of active schedulers. When there are no more schedulers raise a signal for the main thread to continue. This will be required once schedulers can be added and removed from the running kernel. | ||||
| 2012-02-08 | rt: Remove rust_scheduler::rval. Unused | Brian Anderson | -1/+0 | |
| 2012-02-03 | rt: Extract rust_scheduler from rust_task_thread | Brian Anderson | -0/+39 | |
| 2012-02-03 | rt: Rename rust_scheduler to rust_task_thread | Brian Anderson | -150/+0 | |
| 2012-02-02 | rt: Remove unused arguments in rust_scheduler | Brian Anderson | -2/+2 | |
| 2012-02-02 | rt: Remove rust_scheduler::interrupt_flag. Unused | Brian Anderson | -3/+0 | |
| 2012-02-02 | rt: Only wake up all schedulers when no tasks are left | Brian Anderson | -0/+5 | |
| At the moment there's not really any reason to be raising this signal, since they schedulers wake up periodically anyway, but once we remove the timer this will be how the schedulers know to exit. | ||||
| 2012-01-29 | rt: Make the initial segment of the main task's stack 1MB | Brian Anderson | -1/+2 | |
| This is a trick to fool microbenchmarks. Closes #1681 | ||||
| 2012-01-08 | Fix some bad code in the dict interner | Marijn Haverbeke | -1/+0 | |
| Issue #1436 | ||||
| 2012-01-06 | Make binding of fns with bounded type parameters work | Marijn Haverbeke | -0/+8 | |
| Interns non-static dicts to heap-allocated equivalents so that they no longer have stack scope. Closes #1436 | ||||
| 2011-12-28 | Tidy up some drift in runtime logging, close #1380. | Graydon Hoare | -0/+8 | |
| 2011-09-28 | rt: Expose the C stack inside the Rust scheduler so that C calls can switch ↵ | Patrick Walton | -0/+3 | |
| to it | ||||
| 2011-09-27 | rt: Store the task in TLS | Patrick Walton | -0/+16 | |
| 2011-08-25 | rustc: Add an extra flag to object tydescs so that shapes know how to find ↵ | Patrick Walton | -4/+3 | |
| the captured subtydescs | ||||
| 2011-08-18 | Remove rc_base. Closes #603. | Michael Sullivan | -1/+2 | |
| 2011-08-10 | rt: Shutdown gracefully on failure | Brian Anderson | -0/+2 | |
| When the kernel fails, kill all tasks and wait for the schedulers to stop instead of just exiting. I'm sure there are tons of lurking issues here but this is enough to fail without leaking (at least in the absence of cleanups). | ||||
| 2011-08-08 | Introduced task handles. | unknown | -3/+0 | |
| This is the new way to refer to tasks in rust-land. Currently all they do is serve as a key to look up the old rust_task structure. Ideally they won't be ref counted, but baby steps. | ||||
| 2011-07-29 | Removing proxies and message queues. | Eric Holk | -10/+3 | |
| 2011-07-28 | Do all runtime calls to getenv at initialization | Brian Anderson | -0/+3 | |
| getenv is not threadsafe and (maybe as a result) it's randomly crashing with CFLAGS=-g and RUST_THREADS=32. Calls from rust code are still on their own. | ||||
| 2011-07-28 | Updating to work on Windows. | Eric Holk | -0/+6 | |
| 2011-07-28 | Per-thread scheduling. Closes #682. | Eric Holk | -5/+11 | |
| Tasks are spawned on a random thread. Currently they stay there, but we should add task migration and load balancing in the future. This should drammatically improve our task performance benchmarks. | ||||
| 2011-07-28 | Made root_task no longer special. | Eric Holk | -2/+0 | |
| 2011-07-13 | Fix compile-command lines in rt. | Graydon Hoare | -1/+1 | |
| 2011-06-29 | Adding support for pinning tasks to the currently running thread. Closes #598. | Eric Holk | -2/+2 | |
