[PATCH 00/10] Support free page filtering looking up mem_map array
Hatayama, Daisuke
d.hatayama at jp.fujitsu.com
Tue Nov 13 03:56:37 EST 2012
> -----Original Message-----
> From: Atsushi Kumagai [mailto:kumagai-atsushi at mxc.nes.nec.co.jp]
> Sent: Tuesday, November 13, 2012 4:56 PM
[...]
> > - OFFSET(page._mapcount)
> > - OFFSET(page.private)
> > - SIZE(pageflags)
> > - NUMBER(PG_buddy)
> > - NUMBER(PG_slab)
> > - NUMBER(PAGE_BUDDY_MAPCOUNT_VALUE)
>
> And I will post the patch to add the values above to the upstream kernel,
> so there is no problem on the future kernel.
>
> However, according to my tests, current makedumpfile can't get some of the
> values above from VMLINUX and can't exclude free pages with the mem_map
> array logic.
> For example, page_is_buddy_v1() will be selected for kernel-3.4 with
> setup_page_is_buddy() due to not founding NUMBER(PG_buddy) and
> SIZE(pageflags),
> it's miss selection.
>
> Therefore, I propose to change the policy for excluding free page as below
> in order to take care of current kernels:
>
> 1. If VMCORE (or specified VMCOREINFO) includes the values above,
> using the mem_map array logic.
>
> 2. In other cases, using the current logic which uses free_list even if
> running on cyclic mode.
>
> Of course, page_is_buddy_v1() and page_is_buddy_v2() should be retain
> because there is valuable for the user who can prepare VMCOREINFO.
>
You are corrent. I'll repost the patch set soon. Rc1 or beta, which is better?
Thanks.
HATAYAMA, Daisuke
More information about the kexec
mailing list