summaryrefslogtreecommitdiffstats
path: root/arch/ppc/lib/string.S
diff options
context:
space:
mode:
author <jgarzik@pretzel.yyz.us>2005-05-26 01:47:10 -0400
committerJeff Garzik <jgarzik@pobox.com>2005-05-26 01:47:10 -0400
commit949d33e70f2c3e93bfe5265a50e40175b1ab1ec1 (patch)
treeca88fd8f8f81b167dc4685ed34e9636f267db60d /arch/ppc/lib/string.S
parentb095518ef51c37658c58367bd19240b8a113f25c (diff)
parentbef9c558841604116704e10b3d9ff3dbf4939423 (diff)
downloadkernel-crypto-949d33e70f2c3e93bfe5265a50e40175b1ab1ec1.tar.gz
kernel-crypto-949d33e70f2c3e93bfe5265a50e40175b1ab1ec1.tar.xz
kernel-crypto-949d33e70f2c3e93bfe5265a50e40175b1ab1ec1.zip
Automatic merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git branch HEAD
Diffstat (limited to 'arch/ppc/lib/string.S')
-rw-r--r--arch/ppc/lib/string.S7
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/ppc/lib/string.S b/arch/ppc/lib/string.S
index 8d08a2eb225..36c9b97fd92 100644
--- a/arch/ppc/lib/string.S
+++ b/arch/ppc/lib/string.S
@@ -446,6 +446,7 @@ _GLOBAL(__copy_tofrom_user)
#ifdef CONFIG_8xx
/* Don't use prefetch on 8xx */
mtctr r0
+ li r0,0
53: COPY_16_BYTES_WITHEX(0)
bdnz 53b
@@ -564,7 +565,9 @@ _GLOBAL(__copy_tofrom_user)
/* or write fault in cacheline loop */
105: li r9,1
92: li r3,LG_CACHELINE_BYTES
- b 99f
+ mfctr r8
+ add r0,r0,r8
+ b 106f
/* read fault in final word loop */
108: li r9,0
b 93f
@@ -585,7 +588,7 @@ _GLOBAL(__copy_tofrom_user)
* r5 + (ctr << r3), and r9 is 0 for read or 1 for write.
*/
99: mfctr r0
- slw r3,r0,r3
+106: slw r3,r0,r3
add. r3,r3,r5
beq 120f /* shouldn't happen */
cmpwi 0,r9,0