On Mon, 2013-06-24 at 12:51 -0400, Dave Jones wrote: > On Mon, Jun 24, 2013 at 12:24:39PM -0400, Steven Rostedt wrote: > > > > Ah, this is the first victim of my new 'check sanity of nodes during > list walks' patch. > > > It's doing the same prev->next next->prev checking as list_add and > friends. > > > I'm looking at getting it into shape for a 3.12 merge after some other > preparatory patches > > > go into 3.11 > > > > OK, and you may need to make an exception for the ring buffer. To do a > > lockless swap out of the reader page for one of the pages in the buffer, > > it uses the 2 LSB as flags. Notice the "next=ffff880243288001", that "1" > > is a flag that states the next page is the "header" page (next to be > > read). We use cmpxchg to update the pages to handle races between the > > reader and writer. > > I just had a plumber come visit to replace my toilet. > I think even he would say "dude, gross" about that hack. >
Wow, that hack made you so sick you needed to replace your toilet? Note, the idea of using the 2 LSB bits of pointers came from -rt. Where we do the same with the rt_mutex owner. -- Steve -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/