patch-2.4.20 linux-2.4.20/arch/ppc64/lib/string.S
Next file: linux-2.4.20/arch/ppc64/mm/fault.c
Previous file: linux-2.4.20/arch/ppc64/kernel/xics.c
Back to the patch index
Back to the overall index
- Lines: 60
- Date:
Thu Nov 28 15:53:11 2002
- Orig file:
linux-2.4.19/arch/ppc64/lib/string.S
- Orig date:
Fri Aug 2 17:39:43 2002
diff -urN linux-2.4.19/arch/ppc64/lib/string.S linux-2.4.20/arch/ppc64/lib/string.S
@@ -351,9 +351,9 @@
#endif /* MAX_COPY_PREFETCH */
mtctr r0
-53:
dcbt r3,r4
- dcbz r11,r6
+53:
+54: dcbz r11,r6
/* had to move these to keep extable in order */
.section __ex_table,"a"
.align 3
@@ -361,7 +361,7 @@
.llong 71b,101f
.llong 72b,102f
.llong 73b,103f
- .llong 53b,105f
+ .llong 54b,105f
.text
/* the main body of the cacheline loop */
COPY_16_BYTES_WITHEX(0)
@@ -504,11 +504,11 @@
add r4,r0,r4
subf r6,r0,r6
srwi r0,r4,2
+ andi. r4,r4,3
mtctr r0
- bdz 6f
+ bdz 7f
1: stwu r5,4(r6)
bdnz 1b
-6: andi. r4,r4,3
/* clear byte sized chunks */
7: cmpwi 0,r4,0
beqlr
@@ -517,14 +517,20 @@
8: stbu r5,1(r6)
bdnz 8b
blr
-99: li r3,-EFAULT
+90: mr r3,r4
+ blr
+91: mfctr r3
+ slwi r3,r3,2
+ add r3,r3,r4
+ blr
+92: mfctr r3
blr
.section __ex_table,"a"
.align 3
- .llong 11b,99b
- .llong 1b,99b
- .llong 8b,99b
+ .llong 11b,90b
+ .llong 1b,91b
+ .llong 8b,92b
.text
_GLOBAL(__strncpy_from_user)
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)