On 11/11/16 at 03:21pm, Sameer Goel wrote: > On a newer UEFI based Qualcomm target the number of system ram regions > retrieved from /proc/iomem are ~40. So increasing the current hardcoded > values to 64 from 16. There is below uapi in kernel: include/uapi/linux/kexec.h:#define KEXEC_SEGMENT_MAX 16 So you should fix it in kernel first and update the kexec-tools to use the kernel header file instead. Thanks Dave > > Signed-off-by: Sameer Goel <sgoel at codeaurora.org> > --- > kexec/arch/arm64/kexec-arm64.h | 2 +- > kexec/kexec-syscall.h | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/kexec/arch/arm64/kexec-arm64.h b/kexec/arch/arm64/kexec-arm64.h > index bac62f8..bd4c20e 100644 > --- a/kexec/arch/arm64/kexec-arm64.h > +++ b/kexec/arch/arm64/kexec-arm64.h > @@ -11,7 +11,7 @@ > #include "image-header.h" > #include "kexec.h" > > -#define KEXEC_SEGMENT_MAX 16 > +#define KEXEC_SEGMENT_MAX 64 > > #define BOOT_BLOCK_VERSION 17 > #define BOOT_BLOCK_LAST_COMP_VERSION 16 > diff --git a/kexec/kexec-syscall.h b/kexec/kexec-syscall.h > index c0d0bea..f84c937 100644 > --- a/kexec/kexec-syscall.h > +++ b/kexec/kexec-syscall.h > @@ -115,7 +115,7 @@ static inline long kexec_file_load(int kernel_fd, int initrd_fd, > #define KEXEC_ARCH_MIPS ( 8 << 16) > #define KEXEC_ARCH_CRIS (76 << 16) > > -#define KEXEC_MAX_SEGMENTS 16 > +#define KEXEC_MAX_SEGMENTS 64 > > #ifdef __i386__ > #define KEXEC_ARCH_NATIVE KEXEC_ARCH_386 > -- > Qualcomm Datacenter Technologies as an affiliate of Qualcomm Technologies, Inc. Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project. > > > _______________________________________________ > kexec mailing list > kexec at lists.infradead.org > http://lists.infradead.org/mailman/listinfo/kexec