I think the boot vector is in ROM (000FFFF0), so there should be no
problem with the kernel clobbering it. Also, I have had this problem
and managed to make it go away by doing a cold software reset. The
BIOS must be getting control, since it must be checking the cold reset
'flag'. I guess something (sounds like the kernel) is hitting part of
the BIOS data area, and some types of BIOS don't cope. A patch along
these lines may help.
*** linux/arch/i386/kernel/process.c Fri Apr 19 16:35:15 1996
--- linux/arch/i386/kernel/process.c.cold Fri Sep 20 20:14:06 1996
***************
*** 199,205 ****
sti();
/* rebooting needs to touch the page at absolute addr 0 */
pg0[0] = 7;
! *((unsigned short *)0x472) = 0x1234;
for (;;) {
for (i=0; i<100; i++) {
kb_wait();
--- 199,205 ----
sti();
/* rebooting needs to touch the page at absolute addr 0 */
pg0[0] = 7;
! *((unsigned short *)0x472) = 0;
for (;;) {
for (i=0; i<100; i++) {
kb_wait();
Neil Turton.
Churchill College, Cambridge. CB3 0DS. England.