If RX csum calculation with pseudo header is enabled, bge(4)'s will
authorSepherosa Ziehau <sephe@dragonflybsd.org>
Tue, 26 Jun 2007 15:10:23 +0000 (15:10 +0000)
committerSepherosa Ziehau <sephe@dragonflybsd.org>
Tue, 26 Jun 2007 15:10:23 +0000 (15:10 +0000)
commit1724056923e6f363698bec746a61d71c7b082cb0
treee8a7e617a8528527609ee840bb62bd58452dc58c
parent7c439ebdc9c4fc104ad6e6d4cc11cffede95f5e4
If RX csum calculation with pseudo header is enabled, bge(4)'s will
miscalculate csum of frames carrying UDP datagrams.  If UDP datagrams
are not fragmented by IP, then the rate of miscalculation is low, but
if UDP datagrams are fragmented by IP, then most of the frames will be
delivered to the upper layer with wrong hardware csum, which is quite
common for NFS.

Disable hardware RX csum calculation with pseudo header; it will be
better than doing software csum if hardware csum error happens, since
the error rate is too high.

Reported-by: Thomas Nikolajsen <thomas.nikolajsen@mail.dk>
sys/dev/netif/bge/if_bge.c