Re: [RFC/SERIOUS] grilling troubled CPUs for fun and profit?

From: Bodo Eggert
Date: Mon Jun 19 2006 - 17:40:20 EST


linux-os (Dick Johnson) <linux-os@xxxxxxxxxxxx> wrote:
> On Mon, 19 Jun 2006, Andreas Mohr wrote:

>> while looking for loop places to apply cpu_relax() to, I found the
>> following gems:
>>
>> arch/i386/kernel/crash.c/crash_nmi_callback():
>>
>> /* Assume hlt works */
>> halt();
>> for(;;);
>>
>> return 1;
>> }

This will result in the processor burning energy again after the first
interrupt, won't it?

>> arch/i386/kernel/doublefault.c/doublefault_fn():
>>
>> for (;;) /* nothing */;
>> }
>>
>> Let's assume that we have a less than moderate fan failure that causes
>> the CPU to heat up beyond the critical limit...
>> That might result in - you guessed it - crashes or doublefaults.
>> In which case we enter the corresponding handler and do... what?
>
> The double-fault is just a place-holder. The CPU will actually
> reset without even executing this (try it).

If it does reset, you don't need that fuctions (you can use anything),
and if not, doing while(1) halt(); in both cases should DTRT even if the
system is FUBAR, and it should be even smaller.

>> Exactly, we accelerate the CPUs happy march into bit heaven by letting it
>> execute a busy-loop under a non-working fan.
>
> You accelerate nothing. Bit heaven? A CPU without a fan will go into
> a cold, cold, shutdown, requiring a hardware reset to get it out of
> that latched, no internal clock running, mode.

Some CPU may do this, others will go via the random-generator mode into the
self-deformation-mode instead.
--
Ich danke GMX dafür, die Verwendung meiner Adressen mittels per SPF
verbreiteten Lügen zu sabotieren.

http://david.woodhou.se/why-not-spf.html
-
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/