[Makedumpfile PATCH] book3s/ppc64: Lower the max real address to 53 bits for kernels >= v4.11
Bhupesh Sharma
bhsharma at redhat.com
Tue Sep 12 12:54:47 PDT 2017
Hello Atsushi,
On Fri, Sep 8, 2017 at 2:01 PM, Atsushi Kumagai
<ats-kumagai at wm.jp.nec.com> wrote:
> Hello Bhupesh,
>
>>Kernel commit 2f18d533757da3899f4bedab0b2c051b080079dc lowered the
>>max real address on ppc64 to 53 bits.
>>
>>Make similar changes in makedumpfile (on basis of the underlying kernel
>>version), without which the makedumpfile will fail to create a dumpfile
>>and instead throw a SEGV fault as shown below on kernels >= v4.11:
>>
>> # makedumpfile --split -d 31 -x vmlinux vmcore dumpfile_{1,2,3} 2>&1
>>
>> The kernel version is not supported.
>> The makedumpfile operation may be incomplete.
>> [ 1196.252094] makedumpfile[2367]: unhandled signal 11 at
>> 00000100f7011ca8 nip 000000001001eecc lr 000000001001f3c0 code 30001
>> Segmentation fault
>>
>>Signed-off-by: Bhupesh Sharma <bhsharma at redhat.com>
>>---
>> makedumpfile.h | 5 +++--
>> 1 file changed, 3 insertions(+), 2 deletions(-)
>>
>>diff --git a/makedumpfile.h b/makedumpfile.h
>>index 7d81bbcf2234..142753d84e8d 100644
>>--- a/makedumpfile.h
>>+++ b/makedumpfile.h
>>@@ -684,8 +684,9 @@ unsigned long get_kvbase_arm64(void);
>> #define PMD_MASKED_BITS_64K_4_6 0xc0000000000000ffUL
>>
>> #define PTE_RPN_MASK_DEFAULT 0xffffffffffffffffUL
>>-#define PTE_RPN_SIZE_L4_4_6 (info->page_size == 65536 ? 41 : 45)
>>-#define PTE_RPN_MASK_L4_4_6 (((1UL << PTE_RPN_SIZE_L4_4_6) - 1) << info->page_shift)
>>+#define PAGE_PA_MAX_L4_4_6 (info->kernel_version >= KERNEL_VERSION(4,11,0) ? 53 : 57)
>>+#define PTE_RPN_MASK_L4_4_6 \
>>+ (((1UL << PAGE_PA_MAX_L4_4_6) - 1) & ~((1UL << info->page_shift) - 1))
>
> This fix is a bit complicated, please introduce *_L4_4_11 simply.
Thanks for the review. I understood your point.
I will send a v2 shortly which should address your inputs.
Regards,
Bhupesh
>
>> #define PTE_RPN_SHIFT_L4_4_6 info->page_shift
>>
>> #define PGD_MASKED_BITS_4_7 0xc0000000000000ffUL
>>--
>>2.7.4
>>
>
More information about the kexec
mailing list