[PATCH] How to validate this patch

Yanjiang Jin yanjiang.jin at hxt-semitech.com
Fri May 11 02:00:26 EDT 2018


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.





More information about the kexec mailing list