From: Zhang Yanfei <zhangyanfei@xxxxxxxxxxxxxx> Subject: Re: [PATCH v2 04/20] vmcore: allocate buffer for ELF headers on page-size alignment Date: Wed, 6 Mar 2013 14:57:50 +0800 > ? 2013?03?02? 16:36, HATAYAMA Daisuke ??: >> Allocate buffer for ELF headers on page-size aligned boudary to >> satisfy mmap() requirement. For this, __get_free_pages() is used >> instead of kmalloc(). >> >> Also, later patch will decrease actually used buffer size for ELF >> headers, so it's necessary to keep original buffer size and actually >> used buffer size separately. elfcorebuf_sz_orig keeps the original one >> and elfcorebuf_sz the actually used one. >> >> Signed-off-by: HATAYAMA Daisuke <d.hatayama at jp.fujitsu.com> >> --- >> >> fs/proc/vmcore.c | 30 +++++++++++++++++++++--------- >> 1 files changed, 21 insertions(+), 9 deletions(-) >> .... >> @@ -665,26 +671,31 @@ static int __init parse_crash_elf32_headers(void) >> >> /* Read in all elf headers. */ >> elfcorebuf_sz = ehdr.e_phoff + ehdr.e_phnum * sizeof(Elf32_Phdr); >> - elfcorebuf = kmalloc(elfcorebuf_sz, GFP_KERNEL); >> + elfcorebuf_sz_orig = elfcorebuf_sz; >> + elfcorebuf = (void *) __get_free_pages(GFP_KERNEL | __GFP_ZERO, >> + get_order(elfcorebuf_sz)); > > Why not elfcorebuf_sz_orig here? > Thanks. I'll fix this. Thanks. HATAYAMA, Daisuke