Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Dec 2001 14:10:07 +1100 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        Mike Silbersack <silby@silby.com>
Cc:        Matt Dillon <dillon@FreeBSD.org>, <cvs-committers@FreeBSD.org>, <cvs-all@FreeBSD.org>
Subject:   Re: cvs commit: src/sys/dev/sio sio.c
Message-ID:  <20011223135146.H10320-100000@gamplex.bde.org>
In-Reply-To: <Pine.BSF.4.30.0112222142580.51733-100000@niwun.pair.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 22 Dec 2001, Mike Silbersack wrote:

> On Sun, 23 Dec 2001, Bruce Evans wrote:
>
> > This setting is intentional.  The default setting provides twice as much
> > slop as the 8250 UARTs which the driver was designed to support on systems
> > hundreds of times slower than current ones.  Making it twice as large
> > again doesn't help much.
> >
> > This commit will was not approved or even sent for review to the maintainer
> > and will be backed out in a minute.
>
> Ok, I'll buy into the idea that we shouldn't have interrupt latency.
> However, people have indicated that more frequent interrupts solve their
> overflow problems.
>
> Is there real harm in using more frequent interrupts?

It increases overhead a little.

> If no, then Matt's change should be left in.
>
> If yes, explain why.  References to old hardware are not relevant - the
> performance of 4.5-prerelease on modern hardware are.

More frequent interrupts mainly hide interrupt latency problems.  If
something breaks interrupt latency, then there is nothing to prevent
it from being broken by twice as much.

Note that there is a problem if you have more than about 8 active sio
devices or similar devices on other drivers that use fast interrupt
handlers (currently, the cy serial driver is the only other driver
with non-broken fast interrupt handlers).  The devices will get in
each others way.

The driver used to have dynamic fifo trigger reduction, mainly to
support many active sio devices, but this was found harmful and backed
out:

! RCS file: /home/ncvs/src/sys/dev/sio/sio.c,v
! Working file: sio.c
! head: 1.353
! ...
! ----------------------------
! revision 1.53
! date: 1994/09/21 19:39:25;  author: davidg;  state: Exp;  lines: +3 -1
! #if 0'd evil dynamic fifo trigger level adjustment; it just bit me and
! a couple of other people again.
! ----------------------------

Bruce


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




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