[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.10.1403251150330.16870@nuc>
Date: Tue, 25 Mar 2014 11:51:59 -0500 (CDT)
From: Christoph Lameter <cl@...ux.com>
To: Sasha Levin <sasha.levin@...cle.com>
cc: Pekka Enberg <penberg@...nel.org>, Matt Mackall <mpm@...enic.com>,
"linux-mm@...ck.org" <linux-mm@...ck.org>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: mm: slub: gpf in deactivate_slab
On Tue, 25 Mar 2014, Sasha Levin wrote:
> I have a lead on this. Consider the following:
>
> kmem_cache_alloc
> __slab_alloc
> local_irq_save()
> deactivate_slab
> __cmpxchg_double_slab
> slab_unlock
> __bit_spin_unlock
> preempt_enable
> [ Page Fault ]
>
> With this trace, it manifests as a "BUG: sleeping function called from invalid
> context at arch/x86/mm/fault.c" on a might_sleep() in the page fault handler
> (which is an issue on it's own), but I suspect it's also the cause of the
> trace
> above - preemption enabled and a race that removed the page.
>
> Could someone confirm please?
The preempt count is incremented earlier in bit_spin_lock so the
preempt_enable() should not do anything.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists