[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [i386] Call for test of rebooting patch



>For those of you with i386 machines, could you please test the following
>patch?  The code I have removed here is known to cause some motherboards
>to hang instead of reboot after printing "rebooting...".

Well there were problems reported with this patch, some systems apparently
don't like it when you zero the IDT, either.  Supposedly at some time
there is coming a change that will actually attempt to use the reboot
function of the machine's bios; until then, could some of you test the
following for me, mostly for my personal information? This is the
third chunk of code in cpu_reset() that most machines never reach, but 
which seems to me should be pretty motherboard- and cpu-independent,
at least to me.

Replace cpu_reset() in i386/machdep.c with the following chunk:

void
cpu_reset()
{
        /*
         * Try to cause a triple fault and watchdog reset by unmapping the
         * entire address space.
         */
        bzero((caddr_t)PTD, NBPG);
        pmap_update();

        for (;;);
}

Just build a kernel with this, boot it up (single user) and reboot a couple
of times, and then go back to your old kernels (and of course change your
machdep.c back).  Send me your results, satisfy my curiosity. :)

Thanks in advance.

Cheers,
Phil
---
Phillip F Knaack
Systems Administrator, Information Development for Extension Audiences (IDEA)
Iowa State University Extension


Visit your host, monkey.org