Subject: port-i386/3755: cpu_reset() doesn'
To: None <gnats-bugs@gnats.netbsd.org>
From: Bill Sommerfeld <sommerfeld@orchard.east-arlington.ma.us>
List: netbsd-bugs
Date: 06/17/1997 04:39:29
>Number: 3755
>Category: port-i386
>Synopsis: cpu_reset() doesn't
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: gnats-admin (GNATS administrator)
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Jun 16 21:50:01 1997
>Last-Modified:
>Originator: Bill Sommerfeld
>Organization:
>Release: 19970615
>Environment:
System: NetBSD orchard.east-arlington.ma.us 1.2G NetBSD 1.2G (ORCHARD) #4: Tue Jun 17 00:25:25 EDT 1997 root@orchard.east-arlington.ma.us:/home/current/src/sys/arch/i386/compile/ORCHARD i386
>Description:
cpu_reset() fails to reboot my 486/33 system.
>How-To-Repeat:
run /sbin/reboot on my system, and observe that it hangs
instead of rebooting.
>Fix:
removing the #if 0/#endif from cpu_reset() fixes the problem on my
system.
Index: machdep.c
===================================================================
RCS file: /cvsroot/src/sys/arch/i386/i386/machdep.c,v
retrieving revision 1.234
diff -u -r1.234 machdep.c
--- machdep.c 1997/06/12 23:57:26 1.234
+++ machdep.c 1997/06/17 04:38:51
@@ -1695,14 +1695,12 @@
lidt(®ion);
__asm __volatile("divl %0,%1" : : "q" (0), "a" (0));
-#if 0
/*
* Try to cause a triple fault and watchdog reset by unmapping the
* entire address space and doing a TLB flush.
*/
bzero((caddr_t)PTD, NBPG);
pmap_update();
-#endif
for (;;);
}
>Audit-Trail:
>Unformatted: