Date: Tue, 5 Apr 2011 21:55:43 +0000 (UTC) From: Jack F Vogel <jfv@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/dev/e1000 if_igb.c if_igb.h Message-ID: <201104062122.p36LM4d9010290@repoman.freebsd.org>
index | next in thread | raw e-mail
jfv 2011-04-05 21:55:43 UTC
FreeBSD src repository
Modified files:
sys/dev/e1000 if_igb.c if_igb.h
Log:
SVN rev 220375 on 2011-04-05 21:55:43Z by jfv
Important update for the igb driver:
- Add the change made in em to the actual unrefreshed number
of descriptors is used as a basis in rxeof on the way out
to determine if more refresh is needed. NOTE: there is a
difference in the ring setup in igb, this is not accidental,
it is necessitated by hardware behavior, when you reset the
newer adapters it will not let you write RDH, it ALWAYS sets
it to 0. Thus the way em does it is not possible.
- Change the sysctl handling of flow control, it will now make
the change dynamically when the variable setting changes rather
than requiring a reset.
- Change the eee sysctl naming, validation found the old unintuitive :)
- Last but not least, some important performance tweaks in the TX
path, I found that UDP behavior could be drastically hindered or
improved with just small changes in the start loop. What I have
here is what testing has shown to be the best overall. Its interesting
to note that changing the clean threshold to start at a full half of
the ring, made a BIG difference in performance. I hope that this
will prove to be advantageous for most workloads.
MFC in a week.
Revision Changes Path
1.68 +92 -79 src/sys/dev/e1000/if_igb.c
1.20 +18 -5 src/sys/dev/e1000/if_igb.h
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201104062122.p36LM4d9010290>
