Message ID | 20210130071025.65258-7-chenzhou10@huawei.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | support reserving crashkernel above 4G on arm64 kdump | expand |
On 01/30/21 at 03:10pm, Chen Zhou wrote: > Move macro vmcore_elf_check_arch_cross from arch/x86/include/asm/kexec.h > to arch/x86/include/asm/elf.h to fix the following compiling warning: > > make ARCH=i386 > In file included from arch/x86/kernel/setup.c:39:0: > ./arch/x86/include/asm/kexec.h:77:0: warning: "vmcore_elf_check_arch_cross" redefined > # define vmcore_elf_check_arch_cross(x) ((x)->e_machine == EM_X86_64) > > In file included from arch/x86/kernel/setup.c:9:0: > ./include/linux/crash_dump.h:39:0: note: this is the location of the previous definition > #define vmcore_elf_check_arch_cross(x) 0 > > The root cause is that vmcore_elf_check_arch_cross under CONFIG_CRASH_CORE > depend on CONFIG_KEXEC_CORE. Commit 2db65f1db17d ("x86: kdump: move > reserve_crashkernel[_low]() into crash_core.c") triggered the issue. > > Suggested by Mike, simply move vmcore_elf_check_arch_cross from > arch/x86/include/asm/kexec.h to arch/x86/include/asm/elf.h to fix > the warning. > > Fixes: 2db65f1db17d ("x86: kdump: move reserve_crashkernel[_low]() into crash_core.c") Where does this commit id '2db65f1db17d' come from? Here you are fixing another pathc in the same patchset. Please merge this with patch 05/11. > Reported-by: kernel test robot <lkp@intel.com> > Suggested-by: Mike Rapoport <rppt@kernel.org> > Signed-off-by: Chen Zhou <chenzhou10@huawei.com> > --- > arch/x86/include/asm/elf.h | 3 +++ > arch/x86/include/asm/kexec.h | 3 --- > 2 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/arch/x86/include/asm/elf.h b/arch/x86/include/asm/elf.h > index 66bdfe838d61..5333777cc758 100644 > --- a/arch/x86/include/asm/elf.h > +++ b/arch/x86/include/asm/elf.h > @@ -94,6 +94,9 @@ extern unsigned int vdso32_enabled; > > #define elf_check_arch(x) elf_check_arch_ia32(x) > > +/* We can also handle crash dumps from 64 bit kernel. */ > +# define vmcore_elf_check_arch_cross(x) ((x)->e_machine == EM_X86_64) > + > /* SVR4/i386 ABI (pages 3-31, 3-32) says that when the program starts %edx > contains a pointer to a function which might be registered using `atexit'. > This provides a mean for the dynamic linker to call DT_FINI functions for > diff --git a/arch/x86/include/asm/kexec.h b/arch/x86/include/asm/kexec.h > index 2b18f918203e..6fcae01a9cca 100644 > --- a/arch/x86/include/asm/kexec.h > +++ b/arch/x86/include/asm/kexec.h > @@ -72,9 +72,6 @@ struct kimage; > > /* The native architecture */ > # define KEXEC_ARCH KEXEC_ARCH_386 > - > -/* We can also handle crash dumps from 64 bit kernel. */ > -# define vmcore_elf_check_arch_cross(x) ((x)->e_machine == EM_X86_64) > #else > /* Maximum physical address we can use pages from */ > # define KEXEC_SOURCE_MEMORY_LIMIT (MAXMEM-1) > -- > 2.20.1 >
On 2021/2/18 14:31, Baoquan He wrote: > On 01/30/21 at 03:10pm, Chen Zhou wrote: >> Move macro vmcore_elf_check_arch_cross from arch/x86/include/asm/kexec.h >> to arch/x86/include/asm/elf.h to fix the following compiling warning: >> >> make ARCH=i386 >> In file included from arch/x86/kernel/setup.c:39:0: >> ./arch/x86/include/asm/kexec.h:77:0: warning: "vmcore_elf_check_arch_cross" redefined >> # define vmcore_elf_check_arch_cross(x) ((x)->e_machine == EM_X86_64) >> >> In file included from arch/x86/kernel/setup.c:9:0: >> ./include/linux/crash_dump.h:39:0: note: this is the location of the previous definition >> #define vmcore_elf_check_arch_cross(x) 0 >> >> The root cause is that vmcore_elf_check_arch_cross under CONFIG_CRASH_CORE >> depend on CONFIG_KEXEC_CORE. Commit 2db65f1db17d ("x86: kdump: move >> reserve_crashkernel[_low]() into crash_core.c") triggered the issue. >> >> Suggested by Mike, simply move vmcore_elf_check_arch_cross from >> arch/x86/include/asm/kexec.h to arch/x86/include/asm/elf.h to fix >> the warning. >> >> Fixes: 2db65f1db17d ("x86: kdump: move reserve_crashkernel[_low]() into crash_core.c") > Where does this commit id '2db65f1db17d' come from? Here you are fixing > another pathc in the same patchset. Please merge this with patch 05/11. Yeah, the commit id is invalid, i will merge this patch with patch 05/11. Thanks, Chen Zhou > >> Reported-by: kernel test robot <lkp@intel.com> >> Suggested-by: Mike Rapoport <rppt@kernel.org> >> Signed-off-by: Chen Zhou <chenzhou10@huawei.com> >> --- >> arch/x86/include/asm/elf.h | 3 +++ >> arch/x86/include/asm/kexec.h | 3 --- >> 2 files changed, 3 insertions(+), 3 deletions(-) >> >> diff --git a/arch/x86/include/asm/elf.h b/arch/x86/include/asm/elf.h >> index 66bdfe838d61..5333777cc758 100644 >> --- a/arch/x86/include/asm/elf.h >> +++ b/arch/x86/include/asm/elf.h >> @@ -94,6 +94,9 @@ extern unsigned int vdso32_enabled; >> >> #define elf_check_arch(x) elf_check_arch_ia32(x) >> >> +/* We can also handle crash dumps from 64 bit kernel. */ >> +# define vmcore_elf_check_arch_cross(x) ((x)->e_machine == EM_X86_64) >> + >> /* SVR4/i386 ABI (pages 3-31, 3-32) says that when the program starts %edx >> contains a pointer to a function which might be registered using `atexit'. >> This provides a mean for the dynamic linker to call DT_FINI functions for >> diff --git a/arch/x86/include/asm/kexec.h b/arch/x86/include/asm/kexec.h >> index 2b18f918203e..6fcae01a9cca 100644 >> --- a/arch/x86/include/asm/kexec.h >> +++ b/arch/x86/include/asm/kexec.h >> @@ -72,9 +72,6 @@ struct kimage; >> >> /* The native architecture */ >> # define KEXEC_ARCH KEXEC_ARCH_386 >> - >> -/* We can also handle crash dumps from 64 bit kernel. */ >> -# define vmcore_elf_check_arch_cross(x) ((x)->e_machine == EM_X86_64) >> #else >> /* Maximum physical address we can use pages from */ >> # define KEXEC_SOURCE_MEMORY_LIMIT (MAXMEM-1) >> -- >> 2.20.1 >> > . >
diff --git a/arch/x86/include/asm/elf.h b/arch/x86/include/asm/elf.h index 66bdfe838d61..5333777cc758 100644 --- a/arch/x86/include/asm/elf.h +++ b/arch/x86/include/asm/elf.h @@ -94,6 +94,9 @@ extern unsigned int vdso32_enabled; #define elf_check_arch(x) elf_check_arch_ia32(x) +/* We can also handle crash dumps from 64 bit kernel. */ +# define vmcore_elf_check_arch_cross(x) ((x)->e_machine == EM_X86_64) + /* SVR4/i386 ABI (pages 3-31, 3-32) says that when the program starts %edx contains a pointer to a function which might be registered using `atexit'. This provides a mean for the dynamic linker to call DT_FINI functions for diff --git a/arch/x86/include/asm/kexec.h b/arch/x86/include/asm/kexec.h index 2b18f918203e..6fcae01a9cca 100644 --- a/arch/x86/include/asm/kexec.h +++ b/arch/x86/include/asm/kexec.h @@ -72,9 +72,6 @@ struct kimage; /* The native architecture */ # define KEXEC_ARCH KEXEC_ARCH_386 - -/* We can also handle crash dumps from 64 bit kernel. */ -# define vmcore_elf_check_arch_cross(x) ((x)->e_machine == EM_X86_64) #else /* Maximum physical address we can use pages from */ # define KEXEC_SOURCE_MEMORY_LIMIT (MAXMEM-1)
Move macro vmcore_elf_check_arch_cross from arch/x86/include/asm/kexec.h to arch/x86/include/asm/elf.h to fix the following compiling warning: make ARCH=i386 In file included from arch/x86/kernel/setup.c:39:0: ./arch/x86/include/asm/kexec.h:77:0: warning: "vmcore_elf_check_arch_cross" redefined # define vmcore_elf_check_arch_cross(x) ((x)->e_machine == EM_X86_64) In file included from arch/x86/kernel/setup.c:9:0: ./include/linux/crash_dump.h:39:0: note: this is the location of the previous definition #define vmcore_elf_check_arch_cross(x) 0 The root cause is that vmcore_elf_check_arch_cross under CONFIG_CRASH_CORE depend on CONFIG_KEXEC_CORE. Commit 2db65f1db17d ("x86: kdump: move reserve_crashkernel[_low]() into crash_core.c") triggered the issue. Suggested by Mike, simply move vmcore_elf_check_arch_cross from arch/x86/include/asm/kexec.h to arch/x86/include/asm/elf.h to fix the warning. Fixes: 2db65f1db17d ("x86: kdump: move reserve_crashkernel[_low]() into crash_core.c") Reported-by: kernel test robot <lkp@intel.com> Suggested-by: Mike Rapoport <rppt@kernel.org> Signed-off-by: Chen Zhou <chenzhou10@huawei.com> --- arch/x86/include/asm/elf.h | 3 +++ arch/x86/include/asm/kexec.h | 3 --- 2 files changed, 3 insertions(+), 3 deletions(-)