HEADS UP: network locking work going on

Sam Leffler sam at errno.com
Tue Aug 19 16:18:07 PDT 2003


I'm actively working on improving the network performance of -current. Much 
of this work involves removing Giant from the network stack.  I've already 
been in touch with many developers that are working in this area; this note 
is to insure "everyone" is aware.  If your are actively working on stuff 
related to the network code and I haven't already corresponded with you; 
please let me know so we can coordinate our work--I have no interest in 
duplicating the efforts of others.  Otherwise, if you are working in this 
area I'd appreciate knowing about any significant changes planned that 
might affect what I'm doing.

As to the work itself, the overall goal is to bring the performance for 
"normal network use" back to at least that of -stable.  This is to be done 
in time for the 5.2 release though the specifics of what is included in 5.2 
are to be determined.  Obviously the main work here is to remove Giant and 
to that end I've already made a pass over the following areas (in no 
specific order):

raw sockets
routing table (except multicast routing)
fast ipsec
fast forwarding
bridge
ipfw
802.11 layer
fxp, em, sis, wi, and ath drivers

For the most part I've been working "from the bottom up".  I run numerous 
systems w/o Giant in my network drivers and with the "middleware" Giant 
free (e.g. I have a soekris 4501 running bridge+ipfw w/o Giant).  At the 
moment I am concentrating on correctness and not performance so I cannot 
report how much improvement there is.

I'll be posting all significant changes for review before they are 
committed.  Expect the first wave of stuff today and tomorrow.  Developers 
can "play along" by checking out the sam_netperf branch in the p4 repo.

Once the work on the lower layer is stable I'll be turning my attention to 
the upper layers of the network and to IPv6 and NFS.  There's plenty of 
work to go around, so if you're interested in participating please let me 
know.

	Sam


More information about the freebsd-net mailing list