Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 22 Jun 1995 14:54:16 -0700 (PDT)
From:      "Rodney W. Grimes" <rgrimes@gndrsh.aac.dev.com>
To:        regnauld@tetard.frmug.fr.net
Cc:        freebsd-bugs@freefall.cdrom.com
Subject:   Re: i386/541: Alternate Reset method by unmapping ALSO broken
Message-ID:  <199506222154.OAA08312@gndrsh.aac.dev.com>
In-Reply-To: <199506222140.OAA27154@freefall.cdrom.com> from "regnauld@tetard.frmug.fr.net" at Jun 22, 95 02:40:01 pm

next in thread | previous in thread | raw e-mail | index | archive | help
> 

Attempting to debug this piece of code with printf's is futile!!  You
need to either use an Intel ICE emulator or use inline asm outb's to
a latch port with LED's on it.

Attempting to call printf ofter an unmap of the address space usually
sends you to never never land.

Put the code back to the stock code and try just the option to not
use the keyboard reset.   Your printfs may be causing more problems.

If this still fails let me know..., it means you have 2 bugs, a broken
keyboard controller, and a motherboard that does not correctly detect
a CPU shutdown condition.  Not that uncommon in the high volume low
dollar VLB ISA motherboard market :-(.  The real sad news is I don't have
another alternative at this time to try to make the thing report, perhaps
it has the port 92 alternate reset logic.

> 
> >Number:         541
> >Category:       i386
> >Synopsis:       Alternate Reset method by unmapping ALSO broken
> >Confidential:   no
> >Severity:       critical
> >Priority:       high
> >Responsible:    freebsd-bugs (FreeBSD bugs mailing list)
> >State:          open
> >Class:          sw-bug
> >Submitter-Id:   current-users
> >Arrival-Date:   Thu Jun 22 14:40:01 1995
> >Originator:     Philippe Regnauld
> >Organization:
> >Release:        FreeBSD 2.0-BUILT-19950615 i386
> >Environment:
> 
> 	- 486 DX 2/80 (*Processor is AMD*)
> 	- Motherboard is 30pin/72pin RAM  486 VLB Isa
> 	  (keyboard controller could not be located)
> 	- FreeBSD 2.0.5 current
> 	
> >Description:
> 
> 	Keyboard Reset supposedly bogus, and shutdown -r or reboot
> 	systematically produces:
> 
> 	Keyboard reset did not work, attempting CPU shutdown
> 	
> 	... and then the system hangs.
> 
> 	I've tried localizing the problem by inserting visual checkpoints
> 	in /sys/i386/i386/vm_machdep.c (line 786+)
> 
> 	----
> 	
>         /* force a shutdown by unmapping entire address space ! */
>   ->    printf("Unmapping address space:");
>         bzero((caddr_t) PTD, NBPG);
>   ->    printf(" Done.\n");
> 
>         /* "good night, sweet prince .... <THUNK!>" */
>   ->    printf("Pmap Update:");
>         pmap_update();
>   ->    printf(" Done.\n");
> 
>         /* NOTREACHED */
>         while(1);
> 
> 	---
> 
> 	After recompiling a kernel and booting it, the result is this:
> 	
> 	Keyboard reset did not work, attempting CPU shutdown
> 	Unmapping address space:
> 
> 	... and nothing more.
> 
> 	Obviously bzero((caddr_t) PTD, NBPG) never makes it...
> 	(Pretty annoying, as I can't be away long if it crashes and
> 	attempts to reboot while I'm not around (like this summer...))
> 
> >How-To-Repeat:
> 
> 	# shutdown -r now
> 	  or
> 	# reboot
> 	
> 
> >Fix:
> 	
> 	Unknown.
> 
> >Audit-Trail:
> >Unformatted:
> 
> 
> 


-- 
Rod Grimes                                      rgrimes@gndrsh.aac.dev.com
Accurate Automation Company                 Reliable computers for FreeBSD



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199506222154.OAA08312>