public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Multicast broken on x86_64 (Patch Included)
@ 2004-02-26 16:26 Brian Childs
  0 siblings, 0 replies; 2+ messages in thread
From: Brian Childs @ 2004-02-26 16:26 UTC (permalink / raw)
  To: linux-kernel

csum-partial.c in 2.4.25 and 2.6.3 has a bug that causes it to compute
the checksum incorrectly.

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

Anyway, here's a simple patch.

Brian

diff -ruN linux-2.4.25-orig/arch/x86_64/lib/csum-partial.c linux-2.4.25/arch/x86_64/lib/csum-partial.c
--- linux-2.4.25-orig/arch/x86_64/lib/csum-partial.c	2003-06-13 10:51:32.000000000 -0400
+++ linux-2.4.25/arch/x86_64/lib/csum-partial.c	2004-02-26 11:20:17.000000000 -0500
@@ -141,6 +141,6 @@
  */
 unsigned short ip_compute_csum(unsigned char * buff, int len)
 {
-	return ~csum_partial(buff,len,0); 
+	return csum_fold(csum_partial(buff,len,0));
 }
 


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Multicast broken on x86_64 (Patch Included)
       [not found] <20040226162652.GG1760@rentec.com.suse.lists.linux.kernel>
@ 2004-02-26 17:14 ` Andi Kleen
  0 siblings, 0 replies; 2+ messages in thread
From: Andi Kleen @ 2004-02-26 17:14 UTC (permalink / raw)
  To: Brian Childs; +Cc: linux-kernel

Brian Childs <brian@rentec.com> writes:

> csum-partial.c in 2.4.25 and 2.6.3 has a bug that causes it to compute
> the checksum incorrectly.
> 
> As a result, multicast doesn't work.  It looks as though iptables is
> also affected.
> 
> Anyway, here's a simple patch.

Thanks. Added.

-Andi

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2004-02-26 17:14 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-02-26 16:26 Multicast broken on x86_64 (Patch Included) Brian Childs
     [not found] <20040226162652.GG1760@rentec.com.suse.lists.linux.kernel>
2004-02-26 17:14 ` Andi Kleen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox