numam-dpdk/lib/librte_net
Konstantin Ananyev ca68c8190f net: fix IPv6 checksum
For rte_ipv6_phdr_cksum() gcc 4.8.* with "-O3" not always generates
correct code.
Sometimes it 'forgets' to put len and proto fields of psd_header on the stack.
To overcome that problem and speedup things a bit, refactored rte_raw_cksum()
by splitting ipv6 pseudo-header csum calculation into 3 phases:
1. calc sum for src & dst addresses
2. add sum for proto & len.
3. finalise sum
That makes gcc to generate valid code and helps to avoid any copying.

Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
2014-12-17 00:40:37 +01:00
..
Makefile remove trailing whitespaces 2014-06-11 00:29:34 +02:00
rte_arp.h app/testpmd: add engine that replies to ARP and ICMP echo requests 2014-05-16 13:25:16 +02:00
rte_icmp.h app/testpmd: add engine that replies to ARP and ICMP echo requests 2014-05-16 13:25:16 +02:00
rte_ip.h net: fix IPv6 checksum 2014-12-17 00:40:37 +01:00
rte_sctp.h remove trailing whitespaces 2014-06-11 00:29:34 +02:00
rte_tcp.h remove trailing whitespaces 2014-06-11 00:29:34 +02:00
rte_udp.h remove trailing whitespaces 2014-06-11 00:29:34 +02:00