Giant-free polling [PATCH]

dima _pppp at mail.ru
Fri Mar 11 06:31:18 PST 2005


> On Fri, Mar 11, 2005 at 04:55:25PM +0300, dima wrote:
> +> I thought about using list also, but considered it to bring
> +> too much overhead to the code. The original idea of handling arrays
> +> seems to be very elegant.
> 
> Overhead? Did you run any benchmarks to prove it?
> I find list-version much more elegant that using an array.

It was an assumption in fact.
So, I didn't try to implement a list-based version.
We should merge our efforts anyway and both versions
should naturally be tested and benchmarked.

> 
> I also don't like the idea of calling handler method with two locks
> held (one sx and one mutex)...

This gives the highest possible granularity though...

> 
> There is still an unresolved problem (in your and our patch as well) of
> using ifnet structure fields without synchronization, as we don't have
> access tointerface's internal mutex, which protects those fields.

I guess iface_locks[] should be removed then. We actually can get
the interface's internal mutex as ifp->ifq_mtx; I will think about
that on weekend.

> 
> -- 
> Pawel Jakub Dawidek                       http://www.wheel.pl
> pjd at FreeBSD.org                           http://www.FreeBSD.org
> FreeBSD committer                         Am I Evil? Yes, I Am!
> 
> ATTACHMENT: application/pgp-signature
> 


More information about the freebsd-net mailing list