I have a arm64 system, I can find the virtural memory layout during booting: Virtual kernel memory layout: ............................. memory : 0xffff800000200000 - 0xffff801800000000 ( 98302 MB) Then I can read the elf_info in vmcore: readelf -l vmcore Program Headers: Type Offset VirtAddr PhysAddr FileSize ............................................................................... LOAD 0x0000000076d40000 0xffff80017fe00000 0x0000000180000000 0x0000001680000000 The end of vmcore's VirtAddr is (0xffff80017fe00000 + 0x0000001680000000) = 0xFFFF8017FFE00000 The end of vmlinux's VirtAddr is 0xffff801800000000 They have 0x20000 offset. If we use vmcore-dmesg to read the log_buf from vmcore, we would get the below error: vmcore-dmesg vmcore "No program header covering vaddr 0xffff8017ffe90000 found kexec bug?" Since on my system, log_buf is in 0xffff8017ffe90000, it exceeds the end of vmcore VirtAddr. With my patch, vmcore-dmesg can read all dmesg info happily. Yanjiang Jin (1): arm64: update PHYS_OFFSET to conform to kernel kexec/arch/arm64/kexec-arm64.c | 100 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) -- 1.8.3.1 This email is intended only for the named addressee. It may contain information that is confidential/private, legally privileged, or copyright-protected, and you should handle it accordingly. If you are not the intended recipient, you do not have legal rights to retain, copy, or distribute this email or its contents, and should promptly delete the email and all electronic copies in your system; do not retain copies in any media. If you have received this email in error, please notify the sender promptly. Thank you. _______________________________________________ kexec mailing list kexec@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/kexec