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
whereas
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:
src/sys/i386/i386/vm_machdep.c:cpu_reset_real()
specifically:
#if !defined(BROKEN_KEYBOARD_RESET)
         printf("cpu_reset_real: case CPU_PC98 + !BROKEN_KEYBOARD_RESET 
\n"); /* <==== HANGS AFTER DISPLAYING ==== */
         DELAY(1000000);
         /*
          * 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 */
#endif
(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?
cheers
Mark
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