From 92ed0223aefa795d1873427e25599cb70b2148ee Mon Sep 17 00:00:00 2001
From: Dave Peterson <dsp@llnl.gov>
Date: Fri, 29 Jul 2005 22:59:20 -0700
Subject: [PATCH] x86_64: fix bug in csum_partial_copy_generic()

I was observing reproducible crashes on the "movw %bx,(%rsi)" instruction
below while a process in a recvfrom() system call was copying packet data
to user space.  The patch below fixes the exception table and causes the
crash to no longer reproduce.  Please apply.

Acked-by: Andi Kleen <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
---
 arch/x86_64/lib/csum-copy.S | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

(limited to 'arch')

diff --git a/arch/x86_64/lib/csum-copy.S b/arch/x86_64/lib/csum-copy.S
index 01808ec378..72fd55ee89 100644
--- a/arch/x86_64/lib/csum-copy.S
+++ b/arch/x86_64/lib/csum-copy.S
@@ -188,8 +188,8 @@ csum_partial_copy_generic:
 	source
 	movw (%rdi),%bx
 	adcl %ebx,%eax
-	dest
 	decl %ecx
+	dest
 	movw %bx,(%rsi)
 	leaq 2(%rdi),%rdi
 	leaq 2(%rsi),%rsi
-- 
cgit v1.2.2