6.0 BETA2 reboot hangs on SMP system - progress of a sort

Mark Kirkwood markir at paradise.net.nz
Wed Aug 24 10:09:50 GMT 2005

Ok, a little more testing this time :-).

The situation is this:

kernel(SMP) + bios(no USB) -> hang at reboot


kernel(SMP) + bios(USB) -> reboot ok

As I am still a kernel debugger newbie, I added a few printfs instead to 
pin down where the hang was. It appears to be in:



         printf("cpu_reset_real: case CPU_PC98 + !BROKEN_KEYBOARD_RESET 
\n"); /* <==== HANGS AFTER DISPLAYING ==== */
          * Attempt to do a CPU reset via the keyboard controller,
          * do not turn off GateA20, as any machine that fails
          * to do the reset here would then end up in no man's land.
         outb(IO_KBD + 4, 0xFE); /* <==== DEDUCE HANG HERE ==== */
         DELAY(500000);  /* wait 0.5 sec to see if that did it */
         printf("Keyboard reset did not work, attempting CPU shutdown\n");
         DELAY(1000000); /* wait 1 sec for printf to complete */

(I have spattered the nice clean source with printf's and DELAY's... but 
you get the idea).

So outb(IO_KBD + 4, 0xFE) *looks* like the culprit.

So anybody have any ideas why *SMP* is triggering this? Or why it is 
happening anyway?



P.S : Funnily enough, searching about I found cases where Windoze SMP 
boxes would not reboot *unless* USB was disabled...

Mark Kirkwood wrote:
> Looks like I have false alarmed everybody :-( I must have changed 
> something in my BIOS setup since I last (tried to) reboot, because now 
> 5.4-RELEASE (SMP) reboots ok, and I have made no changes there.
> I will look around and try to see what it is (a quick glance suggests I 
> have USB enabled now, whereas it may have been disabled before).

More information about the freebsd-current mailing list