Re: resume crashes in intel_init_thermal [was: mmotm2009-11-13-19-59 uploaded]

From: Andrew Morton
Date: Sat Nov 14 2009 - 11:17:08 EST


On Sat, 14 Nov 2009 14:28:00 +0100 Jiri Slaby <jirislaby@xxxxxxxxx> wrote:

> On 11/14/2009 05:03 AM, akpm@xxxxxxxxxxxxxxxxxxxx wrote:
> > The mm-of-the-moment snapshot 2009-11-13-19-59 has been uploaded to
>
> Hi, resume from ram dies in intel_init_thermal in that kernel:
> http://www.fi.muni.cz/~xslaby/sklad/mce_oops.png

lol.

> The code is cc cc cc cc ... KGDB and KPROBES are off, I don't know where
> the pattern may come from.
>
> Does it ring a bell? Any ideas? mmotm 2009-11-01-10-01 was OK.

From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>

Revert

: commit ce6b5d768c79b9d5dd6345c033bae781d5ca9b8e
: Author: Yong Wang <yong.y.wang@xxxxxxxxxxxxxxx>
: AuthorDate: Wed Nov 11 15:51:25 2009 +0800
: Commit: Ingo Molnar <mingo@xxxxxxx>
: CommitDate: Wed Nov 11 12:33:32 2009 +0100
:
: x86: Mark the thermal init functions __init

because intel_init_thermal() is called from mce_intel_feature_init() at
resume time, and we'd like its text to still be in memory when that
happens.

Reported-by: Jiri Slaby <jirislaby@xxxxxxxxx>
Cc: Yong Wang <yong.y.wang@xxxxxxxxx>
Cc: Ingo Molnar <mingo@xxxxxxx>
Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
---

arch/x86/kernel/cpu/mcheck/therm_throt.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff -puN arch/x86/kernel/cpu/mcheck/therm_throt.c~revert-1 arch/x86/kernel/cpu/mcheck/therm_throt.c
--- a/arch/x86/kernel/cpu/mcheck/therm_throt.c~revert-1
+++ a/arch/x86/kernel/cpu/mcheck/therm_throt.c
@@ -256,7 +256,7 @@ asmlinkage void smp_thermal_interrupt(st
ack_APIC_irq();
}

-void __init mcheck_intel_therm_init(void)
+void mcheck_intel_therm_init(void)
{
/*
* This function is only called on boot CPU. Save the init thermal
@@ -268,7 +268,7 @@ void __init mcheck_intel_therm_init(void
lvtthmr_init = apic_read(APIC_LVTTHMR);
}

-void __init intel_init_thermal(struct cpuinfo_x86 *c)
+void intel_init_thermal(struct cpuinfo_x86 *c)
{
unsigned int cpu = smp_processor_id();
int tm2 = 0;
_

--
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/