Messages in this thread | | | Date | Tue, 25 Mar 2014 20:17:58 -0400 | From | Sasha Levin <> | Subject | Re: mm: slub: gpf in deactivate_slab |
| |
On 03/25/2014 02:10 PM, Christoph Lameter wrote: > On Tue, 25 Mar 2014, Sasha Levin wrote: > >> So here's the full trace. There's obviously something wrong here since we >> pagefault inside the section that was supposed to be running with irqs >> disabled >> and I don't see another cause besides this. >> >> The unreliable entries in the stack trace also somewhat suggest that the >> fault is with the code I've pointed out. > > Looks like there was some invalid data fed to the function and the page > fault with interrupts disabled is the result of following and invalid > pointer. > > Is there more context information available? What are the options set for > the cache that the operation was performed on?
It seems like it's a regular allocation from the inode_cachep kmem_cache:
inode = kmem_cache_alloc(inode_cachep, GFP_KERNEL);
I'm not sure if there's anything special about this cache, codewise it's created as follows:
inode_cachep = kmem_cache_create("inode_cache", sizeof(struct inode), 0, (SLAB_RECLAIM_ACCOUNT|SLAB_PANIC| SLAB_MEM_SPREAD), init_once);
I'd be happy to dig up any other info required, I'm just not too sure what you mean by options for the cache?
Thanks, Sasha
| |