[RFC PATCH 00/10] Support free page filtering looking up mem_map array

HATAYAMA Daisuke d.hatayama at jp.fujitsu.com
Thu Jun 28 23:07:05 EDT 2012


From: HATAYAMA Daisuke <d.hatayama at jp.fujitsu.com>
Subject: [RFC PATCH 00/10] Support free page filtering looking up mem_map array
Date: Fri, 29 Jun 2012 02:37:57 +0900

> This new free page filtering needs the following values.
> 
>   - OFFSET(page._mapcount)
>   - OFFSET(page.private)
>   - SIZE(pageflags)
>   - NUMBER(PG_buddy)
>   - NUMBER(PG_slab)
>   - NUMBER(PAGE_BUDDY_MAPCOUNT_VALUE)
> 
> Unfortunately, OFFSET(_mapcount) and OFFSET(private) fields of page
> structure cannot be obtained from VMLINUX using the exiting library in
> makedumpfile since two members are anonymous components of union
> types. We need a new interface for them.
> 
> To try to use this patch set, it's handy to pass manually editted
> VMCOREINFO file via -i option.
> 

Concretely, I added the following values in VMCOREINFO generated with
-g option or using strings command directly to vmcore.

 * 3.1.0-7.fc16.x86_64

NUMBER(PG_slab)=7
SIZE(pageflags)=4
OFFSET(page._mapcount)=24
OFFSET(page.private)=48
NUMBER(PAGE_BUDDY_MAPCOUNT_VALUE)=-128

 * 2.6.38
SIZE(pageflags)=4
OFFSET(page._mapcount)=12
OFFSET(page.private)=16
NUMBER(PG_slab)=7
NUMBER(PAGE_BUDDY_MAPCOUNT_VALUE)=-2

 * 2.6.32
NUMBER(PG_slab)=7
NUMBER(PG_buddy)=19
OFFSET(page._mapcount)=12
OFFSET(page.private)=16
SIZE(pageflags)=4

 * 2.6.18
NUMBER(PG_slab)=7
NUMBER(PG_buddy)=19
OFFSET(page._mapcount)=12
OFFSET(page.private)=16

Thanks.
HATAYAMA, Daisuke




More information about the kexec mailing list