about summary refs log tree commit diff
path: root/src/rt/circular_buffer.h
AgeCommit message (Collapse)AuthorLines
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.