Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 31 Aug 2001 01:01:04 +1000 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        Martin Blapp <mb@imp.ch>
Cc:        <bkarp@icsi.berkeley.edu>, <kpielorz@tdx.co.uk>, <sthaug@nethelp.no>, <atrn@zeta.org.au>, <roberto@eurocontrol.fr>, <drussell@saturn-tech.com>, <phk@FreeBSD.ORG>, <Patrick.Guelat@imp.ch>, <freebsd-hackers@FreeBSD.ORG>, <freebsd-smp@FreeBSD.ORG>
Subject:   Re: Clock speedup on 4.X FreeBSD SMP and serverworks chipset
Message-ID:  <20010831001909.W2482-100000@besplex.bde.org>
In-Reply-To: <20010830133205.N676-100000@levais.imp.ch>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 30 Aug 2001, Martin Blapp wrote:

> Searching the freebsd mailinglists I have seen that you also suffering
> under this problem on 4.X. STABLE:

I now remember your old mail about this.  I (implicitly) suggested a fix,
but apparently no one tried it:

> On Thu, 21 Jun 2001, Martin Blapp wrote:
>
> > Just gettimeofday() produces 8sec time drifting now. No need
> > to use poll() in our little programm I sent previously.
> >
> > There is no time drifting if we used a 100% load programm with
> > just poll().
> >
> > Very strange. Do you have some idea ?
>
> From clock.c in -current:
>
> | #ifdef APIC_IO
> | #define	lapic_irr1	((volatile u_int *)&lapic)[0x210 / 4]	/* XXX XXX */
> | 	    /* XXX this assumes that apic_8254_intr is < 24. */
> | 	    (lapic_irr1 & (1 << apic_8254_intr))))
> | #else
> | 	    (inb(IO_ICU1) & 1)))
> | #endif
>
> Maybe apic_8254_intr is not < 24.  I think the second XXX comment has
> rotted in -current, but it still applies in RELENG_4.

I now think apic_8254_intr can't be >= 24 (>= 32 in -current), but
"8254 is routed via 8259 and IOAPIC #0 intpin 0" in your probe messages
says that the relevant status bit is in lapic_irr0, not in lapic_irr1.
Try changing the 0x210 to 0x200.

Bruce


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-smp" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010831001909.W2482-100000>