[PATCH] makedumpfile: Support ARM64

Atsushi Kumagai ats-kumagai at wm.jp.nec.com
Fri Aug 21 00:25:03 PDT 2015


>> I am not sure if KVBASE should be VMALLOC_START. May be Atsushi can
>> comment on that.

This is a just reply to the above.

>> The reason for changing the KVBASE was to get non zero value for mem_map
>> as seen from the crash tool. If KVBASE stays at page offset we do not get
>> into the function that looks for the free pages.
>OK.. I made the change for KVBASE and pushed it to my github repo.

KVBASE just means where kernel address spaces begins, it is just set to
PAGE_OFFSET(0xffff880000000000) in x86_64 as an implementation according to
the specification.

In arm64, I'm not sure the memory model but you also should set it
according to the specification of the memory layout of arm64 to walk the
page table correctly.
In my quick check, it looks the kernel address space begins at the vmalloc
region in arm64, so I guess your change is reasonable.

Atsushi Kumagai

>> After looking at the page usage using the crash tool it seems that ~80% of
>> the pages are free.
>> Maybe there is something else that I am missing here. The page look up
>> fails when writing the crashdump file.
>Not sure if you can share the output with --message-level 31, but do you see any
>thing susceptible there?
># makedumpfile -l --message-level 31 rawvmcore makedumpfilevmcore
>Can you compare "Virtual kernel memory layout:" print of Linux kernel boot with
>makedumpfile print for page_offset, vmalloc_start, vmemmap_start etc, and see if
>they match?
>They should match.
>kexec mailing list
>kexec at lists.infradead.org

More information about the kexec mailing list