Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/i386/i386 Stopgap measure: set i386_fpu_present to ...



details:   https://anonhg.NetBSD.org/src/rev/ea171dceef35
branches:  trunk
changeset: 793275:ea171dceef35
user:      bouyer <bouyer%NetBSD.org@localhost>
date:      Sat Feb 01 18:57:38 2014 +0000

description:
Stopgap measure: set i386_fpu_present to 1 for XEN.
Stop a stream of
npxintr: came from nowherenpxintr: l = 0xc17ba560, curproc = 0xc177d880, fpu_present = 0
when running some ATF tests:
http://www-soc.lip6.fr/~bouyer/NetBSD-tests/xen/HEAD/i386/201401300920Z_anita.txt

XXX this is probably still broken for native i386, at last for older CPUs.
It looks like on newer CPUs (such as the one emulated by qemu) this code path
is not used.

diffstat:

 sys/arch/i386/i386/machdep.c |  8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diffs (30 lines):

diff -r 0ddd895f867b -r ea171dceef35 sys/arch/i386/i386/machdep.c
--- a/sys/arch/i386/i386/machdep.c      Sat Feb 01 17:48:04 2014 +0000
+++ b/sys/arch/i386/i386/machdep.c      Sat Feb 01 18:57:38 2014 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: machdep.c,v 1.743 2014/01/26 19:16:17 dsl Exp $        */
+/*     $NetBSD: machdep.c,v 1.744 2014/02/01 18:57:38 bouyer Exp $     */
 
 /*-
  * Copyright (c) 1996, 1997, 1998, 2000, 2004, 2006, 2008, 2009
@@ -67,7 +67,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.743 2014/01/26 19:16:17 dsl Exp $");
+__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.744 2014/02/01 18:57:38 bouyer Exp $");
 
 #include "opt_beep.h"
 #include "opt_compat_ibcs2.h"
@@ -229,7 +229,11 @@
 
 int    cpu_class;
 int    use_pae;
+#ifdef XEN
+int    i386_fpu_present = 1;
+#else
 int    i386_fpu_present;
+#endif
 int    i386_fpu_exception;
 int    i386_fpu_fdivbug;
 



Home | Main Index | Thread Index | Old Index