Subject: Re: very weird booting issues with new machines - 4-core Opteron 270
To: None <port-amd64@netbsd.org>
From: Kurt Schreiner <ks@ub.uni-mainz.de>
List: port-amd64
Date: 08/29/2006 10:45:11
On Mon, Aug 28, 2006 at 07:27:16PM -0700, Chris Kantarjiev wrote:
>
> OK, I'm trying today's -current! Still 4.99.1.
> [...]
> Now ... which kernel to try? GENERIC_ACPI seems the most likely... no joy.
> Same crash at sysbeep. What file should I check to make certain I have the
> fix?
> [...]
> attimer0 at isa0 port 0x40-0x43: AT Timer
> pcppi0 at isa0 port 0x61
> midi0 at pcppi0: PC speaker (CPU-intensive output)
> sysbeep0 at pcppi0
Hm, as a data point: I'm using a kernel w/o sysbeep on my
machines - requires making tickle_tc depend on NPCPPI in
src/sys/arch/amd64/isa/clock.c (see patch below - maybe this
could be checked in to the tree?).
I'll try GENERIC_ACPI later (with newest source from cvs ;-)
Kurt
cvs diff -u sys/arch/amd64/isa/clock.c
Index: sys/arch/amd64/isa/clock.c
===================================================================
RCS file: /cvsroot/src/sys/arch/amd64/isa/clock.c,v
retrieving revision 1.10
diff -u -r1.10 clock.c
--- sys/arch/amd64/isa/clock.c 24 Jul 2006 16:37:24 -0000 1.10
+++ sys/arch/amd64/isa/clock.c 29 Aug 2006 08:36:49 -0000
@@ -188,7 +188,9 @@
void rtcput __P((mc_todregs *));
static inline int gettick_broken_latch __P((void));
+#if (NPCPPI > 0)
static void tickle_tc(void);
+#endif
static volatile uint32_t i8254_lastcount;
static volatile uint32_t i8254_offset;
@@ -363,6 +365,7 @@
}
+#if (NPCPPI > 0)
static void
tickle_tc()
{
@@ -387,11 +390,14 @@
}
}
+#endif
int
clockintr(void *arg, struct intrframe frame)
{
+#if (NPCPPI > 0)
tickle_tc();
+#endif
hardclock((struct clockframe *)&frame);