Re: [patch] alpha: fix alignment problem in csum_ipv6_magic()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ivan Kokshaysky wrote:
On Thu, Jun 21, 2007 at 04:35:01PM -0700, Andrew Morton wrote:
In http://bugzilla.kernel.org/show_bug.cgi?id=8659, Dustin is reporting
that this patch broke tcp-on-ipv6.

Oops. Two instructions operating on the 'len' arg ($18) got swapped...
This should fix ev6 version, ev5 one seems to be ok.

Signed-off-by: Ivan Kokshaysky <[email protected]>

Ivan.

--- 2.6.22-rc4-mm2/arch/alpha/lib/ev6-csum_ipv6_magic.S	Fri Jun 22 15:02:23 2007
+++ linux/arch/alpha/lib/ev6-csum_ipv6_magic.S	Fri Jun 22 15:05:38 2007
@@ -76,18 +76,18 @@ csum_ipv6_magic:
cmoveq $6,$31,$22 # E : src aligned?
 	ldq_u	$23,15($17)	# L : Latency: 3
-	or	$18,$4,$18	# E : 000000CCDDAABBCC
-	extql	$1,$6,$1	# U : U L L U :
+	inswl	$18,3,$18	# U : 000000CCDD000000
+	addl	$19,$7,$19	# E : U L U L : <sign bits>bbaabb00
or $0,$22,$0 # E : 1st src word complete
-	extqh	$5,$6,$5	# U :
-	addl	$19,$7,$19	# E : <sign bits>bbaabb00
-	and	$17,7,$6	# E : L U L U : dst misalignment
+	extql	$1,$6,$1	# U :
+	or	$18,$4,$18	# E : 000000CCDDAABBCC
+	extqh	$5,$6,$5	# U : L U L U
- inswl $18,3,$18 # U : 000000CCDD000000
-	or	$1,$5,$1	# E : 2nd src word complete
+	and	$17,7,$6	# E : dst misalignment
 	extql	$2,$6,$2	# U :
-	extqh	$3,$6,$22	# U : U L U U :
+	or	$1,$5,$1	# E : 2nd src word complete
+	extqh	$3,$6,$22	# U : L U L U :
cmoveq $6,$31,$22 # E : dst aligned?
 	extql	$3,$6,$3	# U :



Awesome! Works like a champ! Thank you guys so very much! You rock!

-Dustin
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux