Date: Tue, 12 Jun 2001 18:59:04 -0700 (PDT) From: Matthew Jacob <mjacob@feral.com> To: Andrew Gallatin <gallatin@cs.duke.edu> Cc: wilko@FreeBSD.ORG, freebsd-alpha@FreeBSD.ORG, jhb@FreeBSD.ORG Subject: Re: followup on 8 way SMP pani Message-ID: <Pine.BSF.4.21.0106121858250.39150-100000@beppo.feral.com> In-Reply-To: <15142.48056.299034.909499@grasshopper.cs.duke.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
Oh! I was really snoozing- many other things happening (mostly personal)! This should be easy to fix- let me look at this tomorrow. On Tue, 12 Jun 2001, Andrew Gallatin wrote: > > Wilko Bulte writes: > > On Mon, Jun 11, 2001 at 10:06:56AM +0000, Wilko Bulte wrote: > > > > Does this make any sense to anybody? Drew, you asked for a traceback? > > <...> > > > > trap entry = 0x2 (memory management fault) > > > cpuid = 0 > > > faulting va = 0x78 > > > type = access violation > > > cause = load instructon > > > pc = 0xfffffc0000491ae4 > > > ra = 0xfffffc0000491ba8 > > > sp = 0xfffffc00008d9b90 > > > usp = 0x0 > > > curproc = 0xfffffc0000831288 > > > pid = 0, comm = swapper > > > > > > Stopped at sync_other_counter+0x24: ldq s1,0x78(s0) <0x78> > > > <s1=0xfffffc0000785138,s0=0x0> > > > db> trace > > > sync_other_counter() at sync_other_counter+0x24 > > > tc_windup() at tc_windup+0x28 > > > hardclock() at hardclock+0x1e8 > > > handleclock() at handleclock+0x22c > > > alpha_clock_interrupt() at alpha_clock_interrupt+0x68 > > > interrupt() at interrupt+0xb8 > > > XentIntlgp() at XentIntlgp+0x14 > > > db> halt > > > > > Yes, sorry I never replied. According to Matt, the turbolaser doesn't > have an i8254 timecounter. And the alpha timecounter is never > initialized in alpha/alpha/clock.c if ncpus>1, so you're taking a > clock interrupt with no timecounter. Oops. No MP for TurboLasers > right now, I guess. > > Here's the code in question: > > /* > * XXX: TurboLaser doesn't have an i8254 counter. > * XXX: A replacement is needed, and another method > * XXX: of determining this would be nice. > */ > if (hwrpb->rpb_type != ST_DEC_21000) { > tc_init(&i8254_timecounter); > } > > if (ncpus == 1) { > alpha_timecounter.tc_frequency = freq; > tc_init(&alpha_timecounter); > } > > I think there are bigger fish to fry right now, but this needs to be > fixed. I'm not at all sure what to do, since I don't think that > the cycle counters on multiple cpus are in sync.. > > Drew > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-alpha" in the body of the message > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0106121858250.39150-100000>