cvs commit: src/sys/netinet ip_fw_pfil.c

Andre Oppermann andre at freebsd.org
Fri Dec 10 03:16:34 PST 2004


Simon 'corecode' Schubert wrote:
> 
> On Friday, 10. December 2004 01:14, Andre Oppermann wrote:
> > > >>>  Check that DUMMYNET_LOADED before seeking dummynet m_tag.
> > > >>This change may be a mistake unless you can prove some significant
> > > >>performance gain.
> > > > Checking for DUMMYNET_LOADED is a simple pointer compare to NULL and
> > > > doesn't add a memory write.  Not a big difference for sure but not
> > > > hurting either.
> > > If tag lookup cost becomes an important consideration in writing code
> > > then we need to address that basic functionality.
> > Actually this is a good argument and reasoning and I buy into it.  Not
> > that is matter this much in this case but having nice and clean code
> > wins big over time.  I've spent and am still spending too much time
> > cleaning up old BSD PDP-11 "optimizations" and other shortcuts.
> 
> Forgive me if I'm way off here, I not experienced with the network stack as
> you are.
> 
> First of all I also think that this check here might be
> over(micro)optimization. Nevertheless, if tags appear to be a (small)
> performance hit, I conclude that there should be a fast way to check for the
> (possible?) existance of a tag. So for example having a bit field signaling
> the presence of the most important tags which are checked in the hot code
> path might help, so is this really stupid[tm]?

Please have a close look at sys/sys/mbuf.h;  that should answer all
outstanding questions for this case.

-- 
Andre


More information about the cvs-src mailing list