Re: 2.6.25-rc2-mm1: build failure (x86)

From: Rafael J. Wysocki
Date: Sat Feb 16 2008 - 19:24:26 EST


On Saturday, 16 of February 2008, Marcin Slusarz wrote:
> On Sat, Feb 16, 2008 at 03:09:49AM -0800, Andrew Morton wrote:
> > On Sat, 16 Feb 2008 11:59:07 +0100 Marcin Slusarz <marcin.slusarz@xxxxxxxxx> wrote:
> >
> > > arch/x86/kernel/built-in.o: In function `amd_smp_thermal_interrupt':
> > > (.text+0xe03b): undefined reference to `mce_log_therm_throt_event'

This one is easily fixed by the appended patch (whether it works is a separate
issue, though).

> > > arch/x86/kernel/built-in.o: In function `acpi_save_state_mem':
> > > (.text+0x12239): undefined reference to `setup_trampoline'
> > >
> > > #
> > > # Automatically generated make config: don't edit
> > > # Linux kernel version: 2.6.25-rc2-mm1
> > > # Sat Feb 16 11:32:49 2008
> >
> > ho hum, thanks. I think I'll drop x86-amd-thermal-interrupt-support.patch.
> > I don't think it's the final version anwyay.
> >
> Ok, I had to revert x86-remove-pt_regs-arg-from-smp_thermal_interrupt before x86-amd-thermal-interrupt-support.
>
> Second error vanished when I reverted "suspend: wakeup code in C".

It will compile if you set CONFIG_SMP. Working on a fix.

Thanks,
Rafael


---
arch/x86/kernel/cpu/mcheck/mce_64.c | 4 ++--
arch/x86/kernel/cpu/mcheck/mce_thermal.h | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)

Index: linux-2.6.25-rc2-mm1/arch/x86/kernel/cpu/mcheck/mce_64.c
===================================================================
--- linux-2.6.25-rc2-mm1.orig/arch/x86/kernel/cpu/mcheck/mce_64.c
+++ linux-2.6.25-rc2-mm1/arch/x86/kernel/cpu/mcheck/mce_64.c
@@ -317,7 +317,7 @@ void do_machine_check(struct pt_regs * r
atomic_dec(&mce_entry);
}

-#ifdef CONFIG_X86_MCE_INTEL
+#ifdef CONFIG_X86_MCE
/***
* mce_log_therm_throt_event - Logs the thermal throttling event to mcelog
* @cpu: The CPU on which the event occurred.
@@ -342,7 +342,7 @@ void mce_log_therm_throt_event(unsigned
rdtscll(m.tsc);
mce_log(&m);
}
-#endif /* CONFIG_X86_MCE_INTEL */
+#endif /* CONFIG_X86_MCE */

/*
* Periodic polling timer for "silent" machine check errors. If the
Index: linux-2.6.25-rc2-mm1/arch/x86/kernel/cpu/mcheck/mce_thermal.h
===================================================================
--- linux-2.6.25-rc2-mm1.orig/arch/x86/kernel/cpu/mcheck/mce_thermal.h
+++ linux-2.6.25-rc2-mm1/arch/x86/kernel/cpu/mcheck/mce_thermal.h
@@ -4,5 +4,5 @@
typedef void (*smp_thermal_interrupt_callback_t)(void);
extern smp_thermal_interrupt_callback_t smp_thermal_interrupt;

-void mce_log_therm_throt_event(unsigned int cpu, __u64 status);
+extern void mce_log_therm_throt_event(unsigned int cpu, __u64 status);

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/