Messages in this thread | | | Date | Sat, 10 May 2003 17:15:29 +0100 | From | Jamie Lokier <> | Subject | Re: [PATCH] Use correct x86 reboot vector |
| |
Andi Kleen wrote: > Extensive discussion by various experts on the discuss@x86-64.org > mailing list concluded that the correct vector to restart an 286+ > CPU is f000:fff0, not ffff:0000. Both seem to work on current systems, > but the first is correct.
You are right. That's what a 286 does when the RESET signal is asserted.
Which is amazing, because I wrote that ffff:0000 and I was reading from the Phoenix BIOS book at the time. It was long ago but I'm fairly sure I got that address from the book.
I just did some Googling and found that there examples of DOS code fragments using both vectors. Also, the original IBM BIOS (as they say) had a long jump at the vector, which is presumably one of the many de facto ABIs which real mode programmers grew to depend on.
> See the "DPMI on AMD64" and "Warm reboot for x86-64 linux" threads > on http://www.x86-64.org/mailing_lists/list?listname=discuss&listnum=0 > for more details.
One would hope that AMD64 systems, being a new design and all, offer a documented and reliable method of rebooting.
It should never be necessary to have to write "reboot=..." on the kernel command line to choose which legacy method works on different AMD64 motherboards. Am I too idealistic?
-- Jamie - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |