Re: [bug] SLUB & freeing locks [was: Re: 2.6.23-rc1: known regressions with patches]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 26 Jul 2007, Peter Zijlstra wrote:

> > Index: linux-2.6/mm/slub.c
> > ===================================================================
> > --- linux-2.6.orig/mm/slub.c
> > +++ linux-2.6/mm/slub.c
> > @@ -1131,6 +1131,7 @@ static void __free_slab(struct kmem_cach
> >  		slab_pad_check(s, page);
> >  		for_each_object(p, s, page_address(page))
> >  			check_object(s, page, p, 0);
> > +		ClearSlabDebug(page);
> >  	}
> >  
> >  	mod_zone_page_state(page_zone(page),
> > @@ -1169,7 +1170,6 @@ static void discard_slab(struct kmem_cac
> >  
> >  	atomic_long_dec(&n->nr_slabs);
> >  	reset_page_mapcount(page);
> > -	ClearSlabDebug(page);
> >  	__ClearPageSlab(page);
> >  	free_slab(s, page);
> >  }
> > 
> 
> Christoph, how about this bit, it looks to me like we clear SlabDebug()
> before we hit the last check in __free_slab().

Looks right. Have you tried to run a kernel with this change and 
"slub_debug"?

Acked-by: Christoph Lameter <[email protected]>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux