Re: possible recursive locking detected at kmem_cache_free

From: Pallipadi, Venkatesh
Date: Fri Jun 26 2009 - 13:00:22 EST


On Fri, 2009-06-26 at 00:37 -0700, Pekka J Enberg wrote:
> Hi Venki,
>
> On Thu, 25 Jun 2009, Pallipadi, Venkatesh wrote:
> > > > Not sure if this has been reported elsewhere. I started seeing this with git
> > > > kernel from this morning on a system with RedHat EL5 base installation with
> > > > ext3 root file system. Attached is the config I am using.
> > > >
> > > > Let me know if you need any more details. This seems to be at every boot. I
> > > > am trying the bisect right now.
> > > >
> > >
> > > Thanks. Let's cc Pekka.
> > >
> >
> > git bisect result.
>
> Thanks! I think I just broke lockdep annotations for slab. Does this patch
> fix things?
>

Yes. This patch helps.

Thanks,
Venki

> Pekka
>
> diff --git a/mm/slab.c b/mm/slab.c
> index e74a16e..37ee532 100644
> --- a/mm/slab.c
> +++ b/mm/slab.c
> @@ -1544,9 +1544,6 @@ void __init kmem_cache_init(void)
> }
>
> g_cpucache_up = EARLY;
> -
> - /* Annotate slab for lockdep -- annotate the malloc caches */
> - init_lock_keys();
> }
>
> void __init kmem_cache_init_late(void)
> @@ -1563,6 +1560,9 @@ void __init kmem_cache_init_late(void)
> /* Done! */
> g_cpucache_up = FULL;
>
> + /* Annotate slab for lockdep -- annotate the malloc caches */
> + init_lock_keys();
> +
> /*
> * Register a cpu startup notifier callback that initializes
> * cpu_cache_get for all new cpus

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