about summary refs log tree commit diff
path: root/src/rt/circular_buffer.h
AgeCommit message (Collapse)AuthorLines
2011-08-01Enabling logging in circular_buffer again.Eric Holk-2/+0
2011-07-21Lots of work on memory tracking and channels.Eric Holk-3/+3
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-13Fix compile-command lines in rt.Graydon Hoare-1/+1
2011-06-28Renamed what's left of rust_dom to rust_schedulerEric Holk-1/+1
2011-06-28Removed dom_owned, splitting things between task_owned and kernel_owned. Had ↵Eric Holk-3/+5
to re-xfail a few tests brson recently un-xfailed.
2011-01-10Cleanup circular_bufferBrian Anderson-0/+4
2011-01-10Remove the assumption that circular_buffer's buffer has a power of two sizeBrian Anderson-8/+14
It was not obvious how to make this implementation work when the unit size was not also a power of two, so for now just make the buffer size a multiple of the unit size so it can pass all the tests.
2011-01-10Don't allow circular_buffer to shrink below its original size when unit_sz ↵Brian Anderson-0/+3
is not a power of two
2010-08-11Ignore upcall_flush for channels that are disassociated from ports. This ↵Michael Bebenita-0/+1
makes task-comm-10 break a little less hard, but it still leaks because messages pending in the channel are never freed.
2010-07-28Add peek method to circular buffer.Michael Bebenita-0/+1
2010-07-28Change _unit_sz to unit_sz and make public in circular_buffer.Michael Bebenita-3/+2
2010-07-28Make circular buffer use only power-of-two sizes, cheaper arithmetic.Michael Bebenita-1/+3
2010-07-19Fixed circular buffer resizing bug.Michael Bebenita-1/+10
2010-07-19Added a message passing system based on lock free queues for inter-thread ↵Michael Bebenita-0/+30
communication. Channels now buffer on the sending side, and no longer require blocking when sending. Lots of other refactoring and bug fixes.