]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
It seems all Broadcom controllers have a bug that can generate UDP
authorPyun YongHyeon <yongari@FreeBSD.org>
Sun, 22 Aug 2010 01:39:09 +0000 (01:39 +0000)
committerPyun YongHyeon <yongari@FreeBSD.org>
Sun, 22 Aug 2010 01:39:09 +0000 (01:39 +0000)
commit35f945cd6212e8add6ec14f1b134ae9516a45e61
tree6d8c9fc6692f5e86cb3109fc34f63d5169199e74
parent7e32f79a4499e8b0f5c01bc31bdefd701b1422d7
It seems all Broadcom controllers have a bug that can generate UDP
datagrams with checksum value 0 when TX UDP checksum offloading is
enabled.  Generating UDP checksum value 0 is RFC 768 violation.
Even though the probability of generating such UDP datagrams is
low, I don't want to see FreeBSD boxes to inject such datagrams
into network so disable UDP checksum offloading by default.  Users
still override this behavior by setting a sysctl variable or loader
tunable, dev.bge.%d.forced_udpcsum.

I have no idea why this issue was not reported so far given that
bge(4) is one of the most commonly used controller on high-end
server class systems. Thanks to andre@ who passed the PR to me.

PR: kern/104826
sys/dev/bge/if_bge.c
sys/dev/bge/if_bgereg.h