Messages in this thread | | | Subject | Re: SLUB regression in current Linus | From | Eric Dumazet <> | Date | Wed, 25 May 2011 17:42:29 +0200 |
| |
Le mercredi 25 mai 2011 à 09:47 -0500, Christoph Lameter a écrit : > On Wed, 25 May 2011, James Morris wrote: > > > It turned out the system was still unstable with the attached config > > (e.g. spontaneous reboot). > > Ahh. Thank you. > > Here is the fix: > > Subject: slub: Fix double bit unlock in debug mode > > Commit 442b06bcea23a01934d3da7ec5898fa154a6cafb added a deactivate_slab() > in the debug case in __slab_alloc(). deactivate_slab() unlocks the current > slab used for allocation. Going to the label unlock_out: does it again. > > So simply return the object. In the debug case we do not need all the other > processing that unlock_out: does. > > Signed-off-by: Christoph Lameter <cl@linux.com> > > --- > mm/slub.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > Index: linux-2.6/mm/slub.c > =================================================================== > --- linux-2.6.orig/mm/slub.c 2011-05-25 09:41:27.000000000 -0500 > +++ linux-2.6/mm/slub.c 2011-05-25 09:41:39.000000000 -0500 > @@ -1884,7 +1884,8 @@ debug: > deactivate_slab(s, c); > c->page = NULL;
is this c->page = NULL; really necessary ?
Thanks !
> c->node = NUMA_NO_NODE; > - goto unlock_out; > + local_irq_restore(flags); > + return object; > } > > /*
-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |