Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 19 Aug 2003 13:58:53 +1000 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        Poul-Henning Kamp <phk@phk.freebsd.dk>
Cc:        Mark Murray <mark@grondar.org>
Subject:   Re: HEADSUP: pca driver being retired. 
Message-ID:  <20030819134824.X86483@gamplex.bde.org>
In-Reply-To: <2087.1060858934@critter.freebsd.dk>

index | next in thread | previous in thread | raw e-mail

On Thu, 14 Aug 2003, Poul-Henning Kamp wrote:

> In message <200308141017.h7EAHoOI089193@grimreaper.grondar.org>, Mark Murray wr
> ites:
>
> >Would it be a useful exercise for the minority(?) of users who use this
> >driver to either see if it can be effectively newbussed or turned into
> >a port or both?
>
> The main problem is the code which hi-jacks the i8254 and kicks off
> up to 20000 interrupts per second.

What problem is this, except that 20000 interrupts per second is too
small for current hardware?

Hmm, use of the interrupts has been broken in -current by incompletely
turning clkintr() into a fast interrupt handler.  pcaintr() is not a
fast interrupt handler, but clkintr() just calls it if pca is active.
pca uses splhigh() for locking, but splhigh is null in -current and
doesn't lock out fast interrupts anyway.  If pca were locked by Giant,
then the large interrupt latency of Giant would show up as large
distortion.

Bruce


home | help

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