On Tuesday 18 March 2008 07:21:23 am Robert Watson wrote:
> On Mon, 17 Mar 2008, Aminuddin Abdullah wrote:
> > I have just upgraded 5 of my machines to V7 from 6.3 and then realized
> > that all the machines has a high CPU usage. Almost all of them using
> > 80%-90% CPU with more than 8000 connections. Using previous 6.3, it only
> > uses 40-50% CPU with the same kind of connections.
> >
> > Using top -S, I can see that swi5: +, PID 17 process is using 30% of CPU
> > time. What is this process?
> >
> > All the machines are Intel C2D 6300 except one which is a AMD 4000+.
> >
> > Is this normal for V7? How do I downgrade to 6.3 if this V7 killing the
> > CPU?
>
> '+' is used in a swi name to indicate that the names of the interrupts to
> put in the thread name are too long, and the code looks like it was written
> under the assumption that at least one name would fit.  It sounds like in
> this case, none fit.  We should fix this code, but in the mean time, what
> you might consider doing is hacking intr_event_update() in kern_intr.c to
> print out overflowing names to the console using printf(9) so you can at
> least see what they are.  This is the somewhat suspect bit of code:

The code is not suspect as p_comm is of fixed length.  Someone just used too 
long of a name for a swi handler.

> I've CC'd John, who might have views on what we should do about this.  It
> would be nice if we had a way to export information on all the interrupt
> event sources, including soft ones, and their mappings to ithreads,
> including swis, using sysctl.  Or maybe we do already and he'll point us at
> it. :-)

We don't and that is what we need for a userland interrupt binding interface 
to make sense.

-- 
John Baldwin
_______________________________________________
freebsd-performance@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-performance
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to