Date: Tue, 12 Jun 2001 21:02:48 -0400 (EDT) From: Andrew Gallatin <gallatin@cs.duke.edu> To: wilko@freebsd.org Cc: freebsd-alpha@freebsd.org, jhb@freebsd.org Subject: Re: followup on 8 way SMP pani Message-ID: <15142.48056.299034.909499@grasshopper.cs.duke.edu> In-Reply-To: <20010613003136.A7905@freebie.xs4all.nl> References: <E159Ob2-000A5J-00@post.mail.nl.demon.net> <20010613003136.A7905@freebie.xs4all.nl>
next in thread | previous in thread | raw e-mail | index | archive | help
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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15142.48056.299034.909499>