Date: Sun, 23 Dec 2001 15:43:22 +1100 (EST) From: Bruce Evans <bde@zeta.org.au> To: David Greenman <dg@root.com> Cc: Mike Silbersack <silby@silby.com>, 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: <20011223154024.R10568-100000@gamplex.bde.org> In-Reply-To: <20011222193445.E24034@nexus.root.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 22 Dec 2001, David Greenman wrote: [bde wrote] > >> >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. > >> >! ---------------------------- > >> > >> You know, it's really weird to see stuff that I wrote from more than > >> 7 years ago. I can only imagine how Kirk feels when he sees log messages > >> from the 80's. :-) > > > >At least if they have been untouched for that long then they were probably > >correct :-). > > Correct for the time, perhaps, but hardware has gotten faster and FreeBSD > kernel latency has apparantly gotten worse. Er, I meant Kirks change :-). Kernel latency has only gotten significantly worse in -current, except in my version of course. To fix it, I had to essentially bring back interrupt masking in software using ipending (so that interrupts don't need to be masked while spinlocks are held; this is easier than keeping spinlocked regions short). I must admit that I use the high trigger level partly as a canary to detect breakage of interrupt latency. > >> As I recall, the dynamic adjustment increased interrupt overhead each > >> time it ratcheted down, causing it to be even more likely to lower it > >> further until it was "1", disabling the overhead reduction benefits of > >> the fifo completely. The cure became worse than the disease. > > > >I once planned to bring this back, at least as an option, with the > >ratcheting down limited to 1 step. I never got around to this because > >the problem seemed to have gone away except for unusual hardware > >combinations. > > Perhaps reduce it to the mid-point (8), but not below that. And be silent about this and the first overrun to avoid scaring people :-). 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?20011223154024.R10568-100000>