[RFC PATCH 0/3] makedumpfile: about failing on arm64 with kernel > 5.4

Alexander Kamensky alexander.kamensky42 at gmail.com
Sun Nov 22 23:37:55 EST 2020

Hi Kazu, Bhupesh,

I am hitting the linear mapping swap issue with makedumpfile failing on
arm64 Yocto Project qemuarm64 machine with 5.8 kernel as it was discussed
several times on this mailing list:

root at qemuarm64:~# makedumpfile -c -F /proc/vmcore > /dev/null
readpage_elf: Attempt to read non-existent page at 0x0.
readmem: type_addr: 1, addr:440, size:8
vaddr_to_paddr_arm64: Can't read pmd
readmem: Can't convert a virtual address(ffffffc01107f94c) to physical address.
readmem: type_addr: 0, addr:ffffffc01107f94c, size:390
check_release: Can't get the address of system_utsname.

I've have tried Bhupesh's remaining third patch [1] from [2] series,
it does help. But I am a bit hesitant to submit it to the Yocto Project,
since Kazu pointed out [3] that this patch uses current kernel version to
make decision how __pa is handled and it may mismatch the version where
vmcore was collected, and in such case it may not operate correctly.

In this RFC series I have tried to implement Kazu's suggestion and use
kernel version retrieved from OSRELEASE string from vmcoreinfo note. I
wonder whether it will help to merge arm64 5.4+ makedumpfile fix? Is
there anything else outstanding that prevents such merge?

My RFC patches series does include Bhupesh's patch [1], and I posted
my modifications on top of it as separate patch for readability.


[1] http://lists.infradead.org/pipermail/kexec/2020-September/021336.html
[2] http://lists.infradead.org/pipermail/kexec/2020-September/021333.html
[3] http://lists.infradead.org/pipermail/kexec/2020-September/021488.html

Alexander Kamensky (2):
  added way to determine kernel version that vmcore is from
  arm64: use kernel version from OSRELEASE to determine linear mapping

Bhupesh Sharma (1):
  makedumpfile/arm64: Add support for ARMv8.2-LVA (52-bit kernel VA

 arch/arm64.c   | 229 ++++++++++++++++++++++++++++++++++++++++++-------
 common.h       |  10 +++
 makedumpfile.c |  23 +++++
 makedumpfile.h |   6 +-
 4 files changed, 234 insertions(+), 34 deletions(-)


More information about the kexec mailing list