Re: Reboot-by-BIOS-jump-patch

Hans Lermen (lermen@elserv.ffm.fgan.de)
Mon, 21 Oct 1996 18:02:57 +0200 (MET DST)


On Mon, 21 Oct 1996, Stephen R. van den Berg wrote:

> Matthias Urlichs <smurf@smurf.noris.de> wrote:
> >Well, here it is again; I modified the thing so that's (a) properly
> >indented and (b) you can control whether to boot via the BIOS by saying
> >"reboot=bios" or "reboot=hard" on the LILO command line (or its append=
> >string). Stuff like "reboot=cold,bios" works, too.
>
> What about simply trying the real-reset/triple-fault method first,
^^^^^^^^^^^
> for say two seconds max, and then simply jump to the bios?

The 'triple-fault method' _is_ already in the kernel, look at this:

void hard_reset_now(void)
{
[ ... ]
__asm__ __volatile__("\tlidt %0": "=m" (no_idt));
} ^^^^^^^
}

This little instruction sets a NULL-IDT, so the next interrupt happening
will triple_fault the machine.
So you see, we already _have_ tried all methods except the BIOS-jump.

Hans
<lermen@fgan.de>