ok, I have sent the new patch for 2.0.14. Thanks From: Burton, Ross [mailto:ross.burton@intel.com] Sent: 2017年1月6日 22:32 To: Bai, Haiqing Cc: OE-core Subject: Re: [OE-core] [PATCH] kexec: ARM: fix align issue of add_buffer_phys_virt() for LPAE kernel. Can you rebase and resent the patch please then? Cheers, Ross On 6 January 2017 at 02:40, Bai, Haiqing (Wind River) > wrote: Hi, Ross: I clone the branch (poky-contrib:ross/mut) and did’t find the fix in 2.0.14, so this fix is still required. Thanks B,R Haiqing Bai From: Burton, Ross [mailto:ross.burton@intel.com] Sent: 2017年1月4日 22:32 To: Bai, Haiqing Cc: OE-core Subject: Re: [OE-core] [PATCH] kexec: ARM: fix align issue of add_buffer_phys_virt() for LPAE kernel. An upgrade to 2.0.14 was recently posted on the list (and is now in poky-contrib:ross/mut), can you verify that this patch is still required with that release and rebase? Ross On 3 January 2017 at 09:05, Haiqing Bai > wrote: If LPAE is enabled, 3 level page table is used and the 'SECTION_SIZE' is (1<<21), so add_buffer_phys_virt() should align to (1 << 21). Signed-off-by: Haiqing Bai > --- ...-ARM-fix-add_buffer_phys_virt-align-issue.patch | 52 ++++++++++++++++++++++ meta/recipes-kernel/kexec/kexec-tools_2.0.12.bb | 1 + 2 files changed, 53 insertions(+) create mode 100644 meta/recipes-kernel/kexec/kexec-tools/kexec-ARM-fix-add_buffer_phys_virt-align-issue.patch diff --git a/meta/recipes-kernel/kexec/kexec-tools/kexec-ARM-fix-add_buffer_phys_virt-align-issue.patch b/meta/recipes-kernel/kexec/kexec-tools/kexec-ARM-fix-add_buffer_phys_virt-align-issue.patch new file mode 100644 index 0000000..7d1f95e --- /dev/null +++ b/meta/recipes-kernel/kexec/kexec-tools/kexec-ARM-fix-add_buffer_phys_virt-align-issue.patch @@ -0,0 +1,52 @@ +From 380019f68e19ac863cf32dc7ff6784e8fe1d751f Mon Sep 17 00:00:00 2001 +From: Haiqing Bai > +Date: Mon, 19 Dec 2016 14:52:02 +0800 +Subject: [PATCH] kexec: ARM: Fix add_buffer_phys_virt() align issue. + +When "CONFIG_ARM_LPAE" is enabled,3 level page table +is used by MMU, the "SECTION_SIZE" is defined with +(1 << 21), but 'add_buffer_phys_virt()' hardcode this +to (1 << 20). + +Upstream-Status: Pending + +Suggested-By:fredrik.markstrom@gmail.com +Signed-off-by: Haiqing Bai > +--- + kexec/arch/arm/crashdump-arm.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/kexec/arch/arm/crashdump-arm.c b/kexec/arch/arm/crashdump-arm.c +index 38a1401..e41b7fb 100644 +--- a/kexec/arch/arm/crashdump-arm.c ++++ b/kexec/arch/arm/crashdump-arm.c +@@ -271,6 +271,7 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) + void *buf; + int err; + int last_ranges; ++ unsigned short align_bit_shift = 20; + + /* + * First fetch all the memory (RAM) ranges that we are going to pass to +@@ -295,6 +296,7 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) + + /* for support LPAE enabled kernel*/ + elf_info.class = ELFCLASS64; ++ align_bit_shift = 21; + + err = crash_create_elf64_headers(info, &elf_info, + usablemem_rgns.ranges, +@@ -315,8 +317,9 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) + * 1MB) so that available memory passed in kernel command line will be + * aligned to 1MB. This is because kernel create_mapping() wants memory + * regions to be aligned to SECTION_SIZE. ++ * The SECTION_SIZE of LPAE kernel is '1UL << 21' defined in pgtable-3level.h + */ +- elfcorehdr = add_buffer_phys_virt(info, buf, bufsz, bufsz, 1 << 20, ++ elfcorehdr = add_buffer_phys_virt(info, buf, bufsz, bufsz, 1 << align_bit_shift, + crash_reserved_mem.start, + crash_reserved_mem.end, -1, 0); + +-- +1.9.1 + diff --git a/meta/recipes-kernel/kexec/kexec-tools_2.0.12.bb b/meta/recipes-kernel/kexec/kexec-tools_2.0.12.bb index 59376c8..3e38923 100644 --- a/meta/recipes-kernel/kexec/kexec-tools_2.0.12.bb +++ b/meta/recipes-kernel/kexec/kexec-tools_2.0.12.bb @@ -8,6 +8,7 @@ SRC_URI += " \ file://0002-powerpc-change-the-memory-size-limit.patch \ file://0001-purgatory-Pass-r-directly-to-linker.patch \ file://0001-vmcore-dmesg-Define-_GNU_SOURCE.patch \ + file://kexec-ARM-fix-add_buffer_phys_virt-align-issue.patch \ " SRC_URI[md5sum] = "10ddaae0e86af54407b164a1f5a39cc3" -- 1.9.1 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core