----- Original Message ----- > Hi, > > When I used crash based off of a mainline kernel to run kmem, it > failed. For your information, the detailed description of the problem > is as follows. > > Version-Release number of selected component: > # uname -a > Linux hp-rx8640-02.rhts.eng.bos.redhat.com 2.6.39-rc6+ #2 SMP Mon May > 9 23:05:14 EDT 2011 ia64 ia64 ia64 GNU/Linux > > Steps to Reproduce: > 1ãupdate the old kernel to the mainline kernel 2.6.39-rc6+ > 2ãinstall crash > 3ã# crash <where the mainline kernel tree is>/vmlinux > 4ãcrash> kmem -s > CACHE NAME OBJSIZE ALLOCATED TOTAL SLABS SSIZE > > kmem: invalid structure member offset: slab_list > FILE: memory.c LINE: 9588 FUNCTION: verify_slab_v2() > > [/usr/bin/crash] error trace: 40000000000db7c0 => 40000000000ca450 => > 40000000000c8ea0 => 40000000001c74a0 > > 40000000001c74a0: OFFSET_verify+224 > 40000000000c8ea0: verify_slab_v2+448 > 40000000000ca450: do_slab_chain_percpu_v2_nodes+4208 > 40000000000db7c0: dump_kmem_cache_percpu_v2+3536 > > kmem: invalid structure member offset: slab_list > FILE: memory.c LINE: 9588 FUNCTION: verify_slab_v2() > > > Best Regards, > Qiannan Cui Yes, I remember seeing the LKML post changing the slab structure from this: struct slab { struct list_head list; unsigned long colouroff; void *s_mem; /* including colour offset */ unsigned int inuse; /* num of objs active in slab */ kmem_bufctl_t free; unsigned short nodeid; }; to this: struct slab { union { struct { struct list_head list; unsigned long colouroff; void *s_mem; /* including colour offset */ unsigned int inuse; /* num of objs active in slab */ kmem_bufctl_t free; unsigned short nodeid; }; struct slab_rcu __slab_cover_slab_rcu; }; }; I had hoped that since the pre-existing fields had been moved into an anonymous union that the member offsets would be returned by gdb the same way. Apparently not: (gdb) ptype struct slab type = struct slab { union { struct {...}; struct slab_rcu __slab_cover_slab_rcu; }; } (gdb) But the offsets can be determined in another manner. Thanks, Dave -- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility