Advice on a multithreaded netisr patch?
barney_cordoba at yahoo.com
Tue Apr 7 14:56:27 PDT 2009
--- On Tue, 4/7/09, Robert Watson <rwatson at FreeBSD.org> wrote:
> From: Robert Watson <rwatson at FreeBSD.org>
> Subject: Re: Advice on a multithreaded netisr patch?
> To: "Barney Cordoba" <barney_cordoba at yahoo.com>
> Cc: freebsd-net at freebsd.org, "Ivan Voras" <ivoras at freebsd.org>
> Date: Tuesday, April 7, 2009, 8:56 AM
> On Tue, 7 Apr 2009, Barney Cordoba wrote:
> >> Have you tried LOCK_PROFILING? It would quickly
> tell you if driver locks were a source of significant
> contention. It works quite well...
> > When I enabled LOCK_PROFILING my side modules, such as
> if_ibg, stopped working. It seems that the ifnet structure
> or something changed with that option enabled. Is there a
> way to sync this without having to integrate everything into
> a specific kernel build?
> LOCK_PROFILING changes the size of lock-related data
> structures, so requires both kernel and full set of modules
> to be rebuilt with the option.
It might be good to mention this in the man page. Most 3rd party
drivers build stand-alone, and even if you pull down the latest
drivers from intel or broadcom they're usually built out of the
kernel build. Its pretty frustrating to have random things failing,
mbuf leaks, etc without any warning.
More information about the freebsd-net