| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2011-08-03 | Sleep for a nonzero amount of time on Windows. | Eric Holk | -4/+4 | |
| 2011-08-03 | Whitespace cleanup | Brian Anderson | -1/+1 | |
| 2011-08-03 | Add some hacks to get stdin piping working more correctly in windows | Brian Anderson | -3/+18 | |
| The way pipes work in windows is not the same as unix, though I'm not entirely clear on the differences. This patch changes the windows pipe method to return non-inheritable fds, and the windows rust_run_program method to duplicate them before spawning the new process. This allows make-check-pretty to work on windows. | ||||
| 2011-08-01 | Adding an intrinsic for recv. | Eric Holk | -53/+209 | |
| 2011-08-01 | Added send and receive to comm library. | Eric Holk | -21/+35 | |
| 2011-08-01 | Enabling logging in circular_buffer again. | Eric Holk | -46/+44 | |
| 2011-08-01 | Objectified library chans and ports. | Eric Holk | -1/+0 | |
| 2011-08-01 | Started working on a library-based comm system. Creating and deleting ports ↵ | Eric Holk | -19/+65 | |
| work. | ||||
| 2011-08-01 | Replace a lock/unlock with scoped_lock in rust_scheduler::create_task | Brian Anderson | -3/+5 | |
| 2011-07-29 | Minimize scheduler locking on task creation | Brian Anderson | -1/+2 | |
| This takes my CPU utilization on task-perf-spawnalot from 35% to 55% | ||||
| 2011-07-29 | Lock the new task's scheduler when creating a task | Brian Anderson | -2/+3 | |
| Previously we were locking the spawning task's scheduler. I couldn't see that that was protecting anything. The newborn_task list in the new task's scheduler though was unprotected from concurrent access. So now we're locking the new task's scheduler. | ||||
| 2011-07-29 | Add sched_threads rt function to get the number of scheduler threads | Brian Anderson | -3/+7 | |
| 2011-07-29 | Removing proxies and message queues. | Eric Holk | -687/+64 | |
| 2011-07-29 | Merge pull request #781 from robarnold/upstream-stable | robarnold | -2/+4 | |
| More useful leak debugging output. | ||||
| 2011-07-28 | Add an assertion about the lock in rust_chan::disassociate | Brian Anderson | -1/+3 | |
| 2011-07-28 | Turn off TRACK_ALLOCATIONS | Brian Anderson | -1/+1 | |
| 2011-07-28 | Change the locking rules around channel disassociation again | Brian Anderson | -1/+4 | |
| This prevents port's destructor from accessing a deleted channel | ||||
| 2011-07-28 | Fiddle with the locking around channel disassociation | Brian Anderson | -2/+1 | |
| This still looks a bit sketchy to me (why isn't there locking in port::destroy?) but this manages to get rid of a problem with channels accessing their task after it's NULL. | ||||
| 2011-07-28 | No strnlen on mac | Brian Anderson | -4/+3 | |
| 2011-07-28 | When using the allow leaks hack don't even print a warning about the leak | Brian Anderson | -3/+0 | |
| This is only used for the test runner and in that case it just makes the test output confusing | ||||
| 2011-07-28 | Do all runtime calls to getenv at initialization | Brian Anderson | -86/+180 | |
| 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 | Remove color-related code from rust_log | Brian Anderson | -48/+2 | |
| This is all dead. If someone decides they want color it will be easy to redo. | ||||
| 2011-07-28 | Updating to work on Windows. | Eric Holk | -6/+15 | |
| 2011-07-28 | Re-enabled the rest of the asserts and things in rust_chan.cpp | Eric Holk | -12/+11 | |
| 2011-07-28 | Resurrecting some of the logging in rust_chan.cpp | Eric Holk | -30/+35 | |
| 2011-07-28 | Removed outdated comment. | Eric Holk | -1/+0 | |
| 2011-07-28 | Atomic reference counting for tasks. | Eric Holk | -77/+43 | |
| 2011-07-28 | Adding upcalls to to ref() and deref() tasks. This is the first step towards ↵ | Eric Holk | -1/+20 | |
| atomic reference counting of tasks. | ||||
| 2011-07-28 | Made task threads wait instead of sleep, so they can be woken up. This ↵ | Eric Holk | -21/+61 | |
| appears to give us much better parallel performance. Also, commented out one more unsafe log and updated rust_kernel.cpp to compile under g++ | ||||
| 2011-07-28 | Adding a function to stdlib to set the min stack size, for programs | Eric Holk | -1/+10 | |
| that absolutely will not succeed with a large default stack. This should be removed once we have stack grown working. Also updated word-count to succeed under the new test framework. | ||||
| 2011-07-28 | Per-thread scheduling. Closes #682. | Eric Holk | -185/+198 | |
| 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 | -20/+18 | |
| 2011-07-28 | More useful leak debugging output. | Rob Arnold | -2/+4 | |
| When printing out leaked allocations, print the allocation tag and address of the returned pointer. | ||||
| 2011-07-27 | More thorough check for interior-ness in str_from_ivec | Marijn Haverbeke | -2/+3 | |
| Closes #750 | ||||
| 2011-07-26 | Base scheduler threads on number of cores. Closes #739 | Brian Anderson | -3/+41 | |
| 2011-07-25 | remove datalayout from the intrinsics.ll.in file, silence linkage warning. | Graydon Hoare | -1/+0 | |
| 2011-07-23 | Fixed another concurrency issue in channels. | Eric Holk | -0/+2 | |
| 2011-07-22 | More work on word-count. | Eric Holk | -3/+14 | |
| Updated the MapReduce protocol so that it's correct more often. It's still not perfect, but the bugs repro less often now. Also found a race condition in channel sending. The problem is that send and receive both need to refer to the _unread field in circular_buffer. For now I just grabbed the port lock to send. We can probably get around this by using atomics instead. | ||||
| 2011-07-22 | Fixing a use of uninitialized memory error in valgrind. | Eric Holk | -2/+2 | |
| 2011-07-21 | Bump the stack size and make the RUST_MIN_STACK env variable accept hex values. | Michael Sullivan | -2/+2 | |
| 2011-07-21 | Improving move semantics for channel operations. | Eric Holk | -11/+12 | |
| This lets us un-XFAIL task-comm-10.rs. | ||||
| 2011-07-21 | Lots of work on memory tracking and channels. | Eric Holk | -179/+235 | |
| We're trying to get closer to doing correct move semantics for channel operations. This involves a lot of cleanup (such as removing the unused sched parameter from rust_vec constructor) and making circular_buffer kernel_owned. Added tagging for memory allocations. This means we give a string tag to everything we allocate. If we leak something and TRACK_ALLOCATIONS is enabled, then it's much easier now to tell exactly what is leaking. | ||||
| 2011-07-20 | Add a huge hack to allow the test runner to continue if a single task leaks | Brian Anderson | -1/+25 | |
| This is just until unwinding works. Adds a flag to the runtime to turn the memory leak checks on task destruction into warnings instead of fatal errors. I am so sorry. Issue #428 | ||||
| 2011-07-19 | Fix calculation of sizeof boxed ivec of str in rt. Closes #712 | Brian Anderson | -1/+6 | |
| 2011-07-17 | Revert "Add setenv to standard library" | Brian Anderson | -16/+0 | |
| This reverts commit 6fb168b3dbd733f6fccebd01c2e5416f800a5566. | ||||
| 2011-07-17 | Add setenv to standard library | Brian Anderson | -0/+16 | |
| 2011-07-15 | rustc: Implement interior string logging in DPS | Patrick Walton | -0/+11 | |
| 2011-07-15 | Remove task_unsupervise from rt builtin functions | Brian Anderson | -6/+0 | |
| This was an exact duplicate of the unsupervise function | ||||
| 2011-07-15 | Modify task::join to indicate how the task terminated | Brian Anderson | -2/+12 | |
| This involves sticking yet another field into the task structure | ||||
| 2011-07-14 | Add task_unsupervise to rustrt.def.in | Brian Anderson | -0/+1 | |
