Module Name:    src
Committed By:   martin
Date:           Mon Feb 16 21:33:13 UTC 2015

Modified Files:
        src/sys/arch/arm/arm [netbsd-7]: cpu_in_cksum.S
        src/sys/arch/arm/conf [netbsd-7]: std.arm

Log Message:
Pull up following revision(s) (requested by skrll in ticket #522):
        sys/arch/arm/conf/std.arm: revision 1.3
        sys/arch/arm/arm/cpu_in_cksum.S: revision 1.9
        sys/arch/arm/arm/cpu_in_cksum.S: revision 1.10
        sys/arch/arm/arm/cpu_in_cksum.S: revision 1.11
Fix conditional; makes 0 len mbuf, 0 offset, 0 len test work.
-
Correct arm_cksumdata for <4 bytes of data
Really fix arm_cksumdata for <4 bytes of data
-
Re-enable CPU_IN_CKSUM now the bugs are fixed.


To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.8.4.1 src/sys/arch/arm/arm/cpu_in_cksum.S
cvs rdiff -u -r1.1.82.1 -r1.1.82.2 src/sys/arch/arm/conf/std.arm

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/arm/arm/cpu_in_cksum.S
diff -u src/sys/arch/arm/arm/cpu_in_cksum.S:1.8 src/sys/arch/arm/arm/cpu_in_cksum.S:1.8.4.1
--- src/sys/arch/arm/arm/cpu_in_cksum.S:1.8	Sun Dec 22 16:29:42 2013
+++ src/sys/arch/arm/arm/cpu_in_cksum.S	Mon Feb 16 21:33:13 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu_in_cksum.S,v 1.8 2013/12/22 16:29:42 matt Exp $	*/
+/*	$NetBSD: cpu_in_cksum.S,v 1.8.4.1 2015/02/16 21:33:13 martin Exp $	*/
 
 /*
  * Copyright 2003 Wasabi Systems, Inc.
@@ -40,7 +40,7 @@
  */
 
 #include <machine/asm.h>
-RCSID("$NetBSD: cpu_in_cksum.S,v 1.8 2013/12/22 16:29:42 matt Exp $")
+RCSID("$NetBSD: cpu_in_cksum.S,v 1.8.4.1 2015/02/16 21:33:13 martin Exp $")
 	
 #include "assym.h"
 
@@ -72,7 +72,7 @@ ENTRY(cpu_in_cksum)
 	ldr	ip, [ip, #(M_NEXT)]
 .Lin_cksum_skip_entry:
 	subs	r2, r2, r1		/* offset = offset - mbuf length */
-	blt	.Lin_cksum_skip_done	/* if offset has gone negative start with this mbuf */
+	ble	.Lin_cksum_skip_done	/* if offset has gone negative start with this mbuf */
 	cmp	ip, #0x00
 	bne	.Lin_cksum_skip_loop
 	b	.Lin_cksum_whoops
@@ -191,8 +191,7 @@ ASENTRY_NP(arm_cksumdata)
 	RETc(eq)			/* done */
 #endif
 	adds	r7, r7, r1		/* undo sub */
-	adds	r7, r7, r1		/* r7 = offset + len */
-	rsb	r7, r7, #4
+	subs	r7, r7, r1
 	lsls	r7, r7, #3
 #if defined(__ARMEB__)
 	lsrs	r2, r2, r7

Index: src/sys/arch/arm/conf/std.arm
diff -u src/sys/arch/arm/conf/std.arm:1.1.82.1 src/sys/arch/arm/conf/std.arm:1.1.82.2
--- src/sys/arch/arm/conf/std.arm:1.1.82.1	Wed Feb  4 06:36:44 2015
+++ src/sys/arch/arm/conf/std.arm	Mon Feb 16 21:33:13 2015
@@ -1,5 +1,5 @@
-#	$NetBSD: std.arm,v 1.1.82.1 2015/02/04 06:36:44 snj Exp $
+#	$NetBSD: std.arm,v 1.1.82.2 2015/02/16 21:33:13 martin Exp $
 #
 # standard NetBSD/arm options
 
-#options		CPU_IN_CKSUM
+options		CPU_IN_CKSUM

Reply via email to