[Bug 208803] ixgbe(4) reports wrong IPv4 checksum when txcsum is enabled
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Thu Sep 15 18:53:27 UTC 2016
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=208803
Jeb Cramer <cramerj at intel.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |cramerj at intel.com
--- Comment #3 from Jeb Cramer <cramerj at intel.com> ---
I'm not understanding what the bug is here. tcpdump, on the transmit side,
captures packets before they reach the hardware. If hardware checksum
offloading is enabled, the checksum value as reported by the stack (and thus
tcpdump) is bogus because the stack didn't do the calculation. The hardware
will take care of the checksum when the stack passes the packet to the hardware
(via the driver).
If you're concerned about the difference between FreeBSD and Linux, that might
be worth exploring for future performance enhancements of the stack, if it
makes sense. The Linux networking stack seems to calculate IPv4 checksums,
regardless. And that would be why the checksum is reported correctly on
tcpdump. A few memory reads...a couple folds for calculating the
checksum...perhaps the number of instructions for this isn't too expensive in
their opinion? I don't know.
I'm confused on #2. Are you seeing the same behavior as the 82598? Or are you
seeing the checksum reported correctly? If the former, then they probably have
the same hardware feature. If the latter, I don't have an answer.
#3 isn't any different than the IPv4 case. Hardware will take care of the
checksum calculation.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-net
mailing list