aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid S. Miller <davem@sunset.davemloft.net>2006-09-27 22:43:02 -0400
committerDavid S. Miller <davem@sunset.davemloft.net>2006-09-29 19:12:41 -0400
commit3a1d5c84ed2fa4034f86e3b204129c139471516e (patch)
tree621b55281a61bdac15efe36ea00dd30fdba49cb5
parentd6c641026dec68acfb4b0baa98aad960e963ed97 (diff)
[SPARC]: Don't zero out tail during copy_from_user_inatomic().
Actually, since we use the same code for all the copying types in and out of userspace, we check at runtime whether preemption is disabled. Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--arch/sparc/lib/copy_user.S4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/sparc/lib/copy_user.S b/arch/sparc/lib/copy_user.S
index 577505b692ae..ef095b6c43b1 100644
--- a/arch/sparc/lib/copy_user.S
+++ b/arch/sparc/lib/copy_user.S
@@ -14,6 +14,7 @@
14#include <asm/ptrace.h> 14#include <asm/ptrace.h>
15#include <asm/asmmacro.h> 15#include <asm/asmmacro.h>
16#include <asm/page.h> 16#include <asm/page.h>
17#include <asm/thread_info.h>
17 18
18/* Work around cpp -rob */ 19/* Work around cpp -rob */
19#define ALLOC #alloc 20#define ALLOC #alloc
@@ -366,6 +367,9 @@ fixupretl:
366 blu 1f 367 blu 1f
367 cmp %o1, %g1 368 cmp %o1, %g1
368 bgeu 1f 369 bgeu 1f
370 ld [%g6 + TI_PREEMPT], %g1
371 cmp %g1, 0
372 bne 1f
369 nop 373 nop
370 save %sp, -64, %sp 374 save %sp, -64, %sp
371 mov %i0, %o0 375 mov %i0, %o0