Commit 047c4ecd authored by Brian Childs's avatar Brian Childs Committed by Linus Torvalds

[PATCH] multicast broken on x86_64

The x86-64 implementation of csum-partial.c causes it to compute the
checksum incorrectly.

As a result, multicast doesn't work.  It looks as though iptables is
also affected.

Here's a simple patch.
parent 9eb3a8d0
...@@ -145,6 +145,6 @@ EXPORT_SYMBOL(csum_partial); ...@@ -145,6 +145,6 @@ EXPORT_SYMBOL(csum_partial);
*/ */
unsigned short ip_compute_csum(unsigned char * buff, int len) unsigned short ip_compute_csum(unsigned char * buff, int len)
{ {
return ~csum_partial(buff,len,0); return csum_fold(csum_partial(buff,len,0));
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment