On Sun, Jan 25, 2004 at 08:07:01PM -0800, Andrew Morton wrote:
When implementing a circular buffer it is better to not constrain the head
and tail indices - just let them grow and wrap without bound. You only need
to bring them in-bounds when you actually use them to index the buffer.
I'm not sure why that's better.
- head-tail is always the amount of used space, no need to futz around
handling the case where one has wrapped and the other hasn't.
I admit I have a hangover, but it seems to me it would actually be more
complicated to make damn sure that the integer overflow case is
definitely handled properly.