On Thu, 2013-01-17 at 21:56 +0000, Christoph Lameter wrote: > on Thu, 17 Jan 2013, Christoph Lameter wrote: > > > Ditto which leaves us with: > > > > Index: linux/mm/slub.c > > =================================================================== > > --- linux.orig/mm/slub.c 2013-01-17 15:49:57.417491975 -0600 > > +++ linux/mm/slub.c 2013-01-17 15:50:49.010287150 -0600 > > @@ -1993,8 +1993,9 @@ static inline void flush_slab(struct kme > > deactivate_slab(s, c->page, c->freelist); > > > > c->tid = next_tid(c->tid); > > - c->page = NULL; > > c->freelist = NULL; > > + barrier(); > > + c->page = NULL; > > } > > But the larger question is why is flush_slab() called with interrupts > enabled? > > RT? Could be, there's a few tweaks made in -rt. I'll put in a WARN_ON_ONCE() if flush_slab() is called with interrupts enabled just to see where it happens. -- Steve -- To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html