How do I do a COLD Reboot on FreeBSD?
smartweb at leadhill.net
Tue Feb 1 06:48:04 PST 2005
Billy Newsom wrote:
> Oh, yeah. I could try that. I could boot an old DOS 6.2 or whatever
> and try CTRL-ALT-DELETE. I think that is what you mean. I don't
> remember that actual command, although I'm sure there's a lot of
> third-party reboot commands... Some of which I'd like to see in the
> assembler code, myself. I'll just bet someone has an old MS-DOS BASIC
> program or assembler written in C, Pascal, or something, which could do
> a warm or cold reset.
Well, I just tried a Windows 98 Startup disk. I booted to floppy, and
then hit CTRL-alt-delete. Guess what? This system did a warm reboot, I
removed the floppy, and FreeBSD booted from the hard disk perfectly.
So I have to come to this conclusion: something in the FreeBSD 5-Stable
code has made this machine break anytime it performs a halt followed by
a power cycle, or a reboot followed by a power cycle (since the reboot
always fails). My surmise is that the new SMP code has somehow done
some sort of corruption to the CPU state(s) and the BIOS is somehow
confused during the attempted reboot.
0. System has passed every diagnostic I can throw at it. Everything
checks out during normal operation. Dual processor Pentium Pro. DOS,
Windows, and FreeBSD 4.7 with SMP do not have this problem. Latest
5-Stable code from 1/30/2005.
1. I type shutdown -r now or reboot. This shows the normal cpu_reset
stuff, and then the system beeps and hangs. (a memory error beep code
saying the first 64KB are bad.) If I turn power off and back on, the
system bypasses its memory check in POST and crashes on next boot.
2. I type shutdown now, followed by halt in single user mode. This
puts me at the "press any key to reboot" screen. If I press a key,
system won't reset, and gives a memory error beep code saying the first
64KB are bad. If I turn power off and back on, (no matter if I tried
the reboot or not) the system bypasses its memory check in POST and
crashes on next boot.
3. I must turn power off and unplug the cord usually. Then, on
subsequesnt boot, the memory will be tested during POST and FreeBSD
4. None of these problems appear after a DOS warm boot on this machine.
5. I'm looking for a cold reboot utility to patch the kernel or the
reboot command of FreeBSD 5.3.
6. I recompiled the kernel with the BROKEN_KEYBOARD_RESET option. The
reboot hangs and system does not reboot, but the beep codes aren't
there. I suppose that the BROKEN_KEYBOARD_RESET style reboot (I saw the
source code and thought I'd try it) does not work. Again, when I power
cycle the machine, the POST is still a short POST (and the kernel
crashes when loading) and so I must disengage the power cable as above.
More information about the freebsd-questions