aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/networking
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2016-05-09 15:59:24 -0400
committerDavid S. Miller <davem@davemloft.net>2016-05-09 15:59:24 -0400
commite800072c18f0d7b89a80fa46dceb3d080c80e09c (patch)
tree8da6cb7944762a60ec37594720c1ad2757631c2f /Documentation/networking
parente8ed77dfa90dd79c5343415a4bbbfdab9787b35a (diff)
parentb507146bb6b9ac0c0197100ba3e299825a21fed3 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
In netdevice.h we removed the structure in net-next that is being changes in 'net'. In macsec.c and rtnetlink.c we have overlaps between fixes in 'net' and the u64 attribute changes in 'net-next'. The mlx5 conflicts have to do with vxlan support dependencies. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'Documentation/networking')
-rw-r--r--Documentation/networking/checksum-offloads.txt14
1 files changed, 7 insertions, 7 deletions
diff --git a/Documentation/networking/checksum-offloads.txt b/Documentation/networking/checksum-offloads.txt
index de2a327766a7..56e36861245f 100644
--- a/Documentation/networking/checksum-offloads.txt
+++ b/Documentation/networking/checksum-offloads.txt
@@ -69,18 +69,18 @@ LCO: Local Checksum Offload
69LCO is a technique for efficiently computing the outer checksum of an 69LCO is a technique for efficiently computing the outer checksum of an
70 encapsulated datagram when the inner checksum is due to be offloaded. 70 encapsulated datagram when the inner checksum is due to be offloaded.
71The ones-complement sum of a correctly checksummed TCP or UDP packet is 71The ones-complement sum of a correctly checksummed TCP or UDP packet is
72 equal to the sum of the pseudo header, because everything else gets 72 equal to the complement of the sum of the pseudo header, because everything
73 'cancelled out' by the checksum field. This is because the sum was 73 else gets 'cancelled out' by the checksum field. This is because the sum was
74 complemented before being written to the checksum field. 74 complemented before being written to the checksum field.
75More generally, this holds in any case where the 'IP-style' ones complement 75More generally, this holds in any case where the 'IP-style' ones complement
76 checksum is used, and thus any checksum that TX Checksum Offload supports. 76 checksum is used, and thus any checksum that TX Checksum Offload supports.
77That is, if we have set up TX Checksum Offload with a start/offset pair, we 77That is, if we have set up TX Checksum Offload with a start/offset pair, we
78 know that _after the device has filled in that checksum_, the ones 78 know that after the device has filled in that checksum, the ones
79 complement sum from csum_start to the end of the packet will be equal to 79 complement sum from csum_start to the end of the packet will be equal to
80 _whatever value we put in the checksum field beforehand_. This allows us 80 the complement of whatever value we put in the checksum field beforehand.
81 to compute the outer checksum without looking at the payload: we simply 81 This allows us to compute the outer checksum without looking at the payload:
82 stop summing when we get to csum_start, then add the 16-bit word at 82 we simply stop summing when we get to csum_start, then add the complement of
83 (csum_start + csum_offset). 83 the 16-bit word at (csum_start + csum_offset).
84Then, when the true inner checksum is filled in (either by hardware or by 84Then, when the true inner checksum is filled in (either by hardware or by
85 skb_checksum_help()), the outer checksum will become correct by virtue of 85 skb_checksum_help()), the outer checksum will become correct by virtue of
86 the arithmetic. 86 the arithmetic.