Module Name: src
Committed By: mrg
Date: Sat Jan 22 10:37:23 UTC 2011
Modified Files:
src/sys/arch/sparc/sparc: intr.c
Log Message:
XXX:
in strayintr() don't print about stray zs inters in MP case.
To generate a diff of this commit:
cvs rdiff -u -r1.108 -r1.109 src/sys/arch/sparc/sparc/intr.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/sparc/sparc/intr.c
diff -u src/sys/arch/sparc/sparc/intr.c:1.108 src/sys/arch/sparc/sparc/intr.c:1.109
--- src/sys/arch/sparc/sparc/intr.c:1.108 Tue Jan 5 21:38:50 2010
+++ src/sys/arch/sparc/sparc/intr.c Sat Jan 22 10:37:22 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: intr.c,v 1.108 2010/01/05 21:38:50 macallan Exp $ */
+/* $NetBSD: intr.c,v 1.109 2011/01/22 10:37:22 mrg Exp $ */
/*
* Copyright (c) 1992, 1993
@@ -41,7 +41,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: intr.c,v 1.108 2010/01/05 21:38:50 macallan Exp $");
+__KERNEL_RCSID(0, "$NetBSD: intr.c,v 1.109 2011/01/22 10:37:22 mrg Exp $");
#include "opt_multiprocessor.h"
#include "opt_sparc_arch.h"
@@ -133,6 +133,19 @@
char bits[64];
int timesince;
+#if defined(MULTIPROCESSOR)
+ /*
+ * XXX
+ *
+ * Don't whine about zs interrupts on MP. We sometimes get
+ * stray interrupts when polled kernel output on cpu>0 eats
+ * the interrupt and cpu0 sees it.
+ */
+#define ZS_INTR_IPL 12
+ if (fp->ipl == ZS_INTR_IPL)
+ return;
+#endif
+
snprintb(bits, sizeof(bits), PSR_BITS, fp->psr);
printf("stray interrupt cpu%d ipl 0x%x pc=0x%x npc=0x%x psr=%s\n",
cpu_number(), fp->ipl, fp->pc, fp->npc, bits);