On Sat, 26 Jul 2008 11:25:19 +0200 Ingo Molnar <mingo at elte.hu> wrote: > > please apply before -rc1. > > Ingo > > -----------> > >From 72db7cba50b6a05825f8a287f74002cc38f04fb7 Mon Sep 17 00:00:00 2001 > From: Ingo Molnar <mingo at elte.hu> > Date: Sat, 26 Jul 2008 11:22:33 +0200 > Subject: [PATCH] crashdump: fix undefined reference to `elfcorehdr_addr' > > fix build bug introduced by 95b68dec0d5 "calgary iommu: use the first > kernels TCE tables in kdump": > > arch/x86/kernel/built-in.o: In function `calgary_iommu_init': > (.init.text+0x8399): undefined reference to `elfcorehdr_addr' > arch/x86/kernel/built-in.o: In function `calgary_iommu_init': > (.init.text+0x856c): undefined reference to `elfcorehdr_addr' > arch/x86/kernel/built-in.o: In function `detect_calgary': > (.init.text+0x8c68): undefined reference to `elfcorehdr_addr' > arch/x86/kernel/built-in.o: In function `detect_calgary': > (.init.text+0x8d0c): undefined reference to `elfcorehdr_addr' > > make elfcorehdr_addr a generally available symbol. > > Signed-off-by: Ingo Molnar <mingo at elte.hu> > --- > include/linux/crash_dump.h | 6 ++++++ > 1 files changed, 6 insertions(+), 0 deletions(-) > > diff --git a/include/linux/crash_dump.h b/include/linux/crash_dump.h > index 6cd39a9..025e4f5 100644 > --- a/include/linux/crash_dump.h > +++ b/include/linux/crash_dump.h > @@ -8,7 +8,13 @@ > #include <linux/proc_fs.h> > > #define ELFCORE_ADDR_MAX (-1ULL) > + > +#ifdef CONFIG_PROC_VMCORE > extern unsigned long long elfcorehdr_addr; > +#else > +static const unsigned long long elfcorehdr_addr = ELFCORE_ADDR_MAX; > +#endif > + > extern ssize_t copy_oldmem_page(unsigned long, char *, size_t, > unsigned long, int); > extern const struct file_operations proc_vmcore_operations; spose that'll fix it. But it seems odd that is_kdump_kernel() will return false if CONFIG_PROC_VMCORE=n, CONFIG_CRASH_DUMP=y. I mean, it's still a crashdump kernel, is it not?