HEADS UP: network locking work going on
From: Sam Leffler (sam_at_errno.com)
Date: 08/20/03
- Previous message: Julian Elischer: "Re: [TRB] timer0 frequency change code removal"
- Next in thread: Kris Kennaway: "Re: HEADS UP: network locking work going on"
- Reply: Kris Kennaway: "Re: HEADS UP: network locking work going on"
- Reply: Scott Long: "Re: HEADS UP: network locking work going on"
- Reply: Bruce M Simpson: "(no subject)"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Tue, 19 Aug 2003 15:59:27 -0700 To: freebsd-net-@freebsd.org, freebsd-arch@freebsd.org
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
_______________________________________________
freebsd-arch@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-arch
To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org"
- Previous message: Julian Elischer: "Re: [TRB] timer0 frequency change code removal"
- Next in thread: Kris Kennaway: "Re: HEADS UP: network locking work going on"
- Reply: Kris Kennaway: "Re: HEADS UP: network locking work going on"
- Reply: Scott Long: "Re: HEADS UP: network locking work going on"
- Reply: Bruce M Simpson: "(no subject)"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
- Re: Running the network stack without Giant -- change in default coming
... > to allow the network stack to run in parallel on multiple processors ...
> currently unsafe without the Giant lock turned on. ... > configuration for testing
out the impact of disabling Giant on MP ... (freebsd-current) - HEADS UP: network locking work going on
... I'm actively working on improving the network performance of -current.
... of this work involves removing Giant from the network stack. ... (freebsd-net) - Running the network stack without Giant -- what to try and when
... As many of you have seen from status reports, e-mails, bug reports, etc, ...
the FreeBSD Project has been working for some time on getting the network ... without the
Giant lock, and we're ready for more people to start running ... - While we've been doing
pretty heavy testing in MPSAFE configurations, ... (freebsd-current) - Removing NET_NEEDS_GIANT: first patch
... This source code declaration was used by optionally compiled components to declare a strict
requirement for Giant, and forced Giant over the entire network stack. ... retrieving
revision 1.13 ... diff -u -r1.13 amrr.c ... (freebsd-arch) - Removing NET_NEEDS_GIANT: first patch
... This source code declaration was used by optionally compiled components to declare a strict
requirement for Giant, and forced Giant over the entire network stack. ... retrieving
revision 1.13 ... diff -u -r1.13 amrr.c ... (freebsd-current)