diff options
Diffstat (limited to 'arch/arm/lib')
-rw-r--r-- | arch/arm/lib/Makefile | 13 | ||||
-rw-r--r-- | arch/arm/lib/backtrace.S | 5 | ||||
-rw-r--r-- | arch/arm/lib/clear_user.S | 4 | ||||
-rw-r--r-- | arch/arm/lib/copy_from_user.S | 4 | ||||
-rw-r--r-- | arch/arm/lib/copy_to_user.S | 4 | ||||
-rw-r--r-- | arch/arm/lib/strncpy_from_user.S | 2 | ||||
-rw-r--r-- | arch/arm/lib/strnlen_user.S | 4 | ||||
-rw-r--r-- | arch/arm/lib/uaccess.S | 8 |
8 files changed, 22 insertions, 22 deletions
diff --git a/arch/arm/lib/Makefile b/arch/arm/lib/Makefile index 7b726b627ea5..30351cd4560d 100644 --- a/arch/arm/lib/Makefile +++ b/arch/arm/lib/Makefile | |||
@@ -6,28 +6,31 @@ | |||
6 | 6 | ||
7 | lib-y := backtrace.o changebit.o csumipv6.o csumpartial.o \ | 7 | lib-y := backtrace.o changebit.o csumipv6.o csumpartial.o \ |
8 | csumpartialcopy.o csumpartialcopyuser.o clearbit.o \ | 8 | csumpartialcopy.o csumpartialcopyuser.o clearbit.o \ |
9 | copy_page.o delay.o findbit.o memchr.o memcpy.o \ | 9 | delay.o findbit.o memchr.o memcpy.o \ |
10 | memmove.o memset.o memzero.o setbit.o \ | 10 | memmove.o memset.o memzero.o setbit.o \ |
11 | strncpy_from_user.o strnlen_user.o \ | 11 | strncpy_from_user.o strnlen_user.o \ |
12 | strchr.o strrchr.o \ | 12 | strchr.o strrchr.o \ |
13 | testchangebit.o testclearbit.o testsetbit.o \ | 13 | testchangebit.o testclearbit.o testsetbit.o \ |
14 | getuser.o putuser.o clear_user.o \ | ||
15 | ashldi3.o ashrdi3.o lshrdi3.o muldi3.o \ | 14 | ashldi3.o ashrdi3.o lshrdi3.o muldi3.o \ |
16 | ucmpdi2.o lib1funcs.o div64.o sha1.o \ | 15 | ucmpdi2.o lib1funcs.o div64.o sha1.o \ |
17 | io-readsb.o io-writesb.o io-readsl.o io-writesl.o | 16 | io-readsb.o io-writesb.o io-readsl.o io-writesl.o |
18 | 17 | ||
18 | mmu-y := clear_user.o copy_page.o getuser.o putuser.o | ||
19 | |||
19 | # the code in uaccess.S is not preemption safe and | 20 | # the code in uaccess.S is not preemption safe and |
20 | # probably faster on ARMv3 only | 21 | # probably faster on ARMv3 only |
21 | ifeq ($(CONFIG_PREEMPT),y) | 22 | ifeq ($(CONFIG_PREEMPT),y) |
22 | lib-y += copy_from_user.o copy_to_user.o | 23 | mmu-y += copy_from_user.o copy_to_user.o |
23 | else | 24 | else |
24 | ifneq ($(CONFIG_CPU_32v3),y) | 25 | ifneq ($(CONFIG_CPU_32v3),y) |
25 | lib-y += copy_from_user.o copy_to_user.o | 26 | mmu-y += copy_from_user.o copy_to_user.o |
26 | else | 27 | else |
27 | lib-y += uaccess.o | 28 | mmu-y += uaccess.o |
28 | endif | 29 | endif |
29 | endif | 30 | endif |
30 | 31 | ||
32 | lib-$(CONFIG_MMU) += $(mmu-y) | ||
33 | |||
31 | ifeq ($(CONFIG_CPU_32v3),y) | 34 | ifeq ($(CONFIG_CPU_32v3),y) |
32 | lib-y += io-readsw-armv3.o io-writesw-armv3.o | 35 | lib-y += io-readsw-armv3.o io-writesw-armv3.o |
33 | else | 36 | else |
diff --git a/arch/arm/lib/backtrace.S b/arch/arm/lib/backtrace.S index 058b80d72aa1..91f993f2e9db 100644 --- a/arch/arm/lib/backtrace.S +++ b/arch/arm/lib/backtrace.S | |||
@@ -97,16 +97,13 @@ ENTRY(c_backtrace) | |||
97 | b 1007f | 97 | b 1007f |
98 | 98 | ||
99 | /* | 99 | /* |
100 | * Fixup for LDMDB | 100 | * Fixup for LDMDB. Note that this must not be in the fixup section. |
101 | */ | 101 | */ |
102 | .section .fixup,"ax" | ||
103 | .align 0 | ||
104 | 1007: ldr r0, =.Lbad | 102 | 1007: ldr r0, =.Lbad |
105 | mov r1, frame | 103 | mov r1, frame |
106 | bl printk | 104 | bl printk |
107 | ldmfd sp!, {r4 - r8, pc} | 105 | ldmfd sp!, {r4 - r8, pc} |
108 | .ltorg | 106 | .ltorg |
109 | .previous | ||
110 | 107 | ||
111 | .section __ex_table,"a" | 108 | .section __ex_table,"a" |
112 | .align 3 | 109 | .align 3 |
diff --git a/arch/arm/lib/clear_user.S b/arch/arm/lib/clear_user.S index ea435ae2e4a5..ecb28dcdaf7b 100644 --- a/arch/arm/lib/clear_user.S +++ b/arch/arm/lib/clear_user.S | |||
@@ -12,13 +12,13 @@ | |||
12 | 12 | ||
13 | .text | 13 | .text |
14 | 14 | ||
15 | /* Prototype: int __arch_clear_user(void *addr, size_t sz) | 15 | /* Prototype: int __clear_user(void *addr, size_t sz) |
16 | * Purpose : clear some user memory | 16 | * Purpose : clear some user memory |
17 | * Params : addr - user memory address to clear | 17 | * Params : addr - user memory address to clear |
18 | * : sz - number of bytes to clear | 18 | * : sz - number of bytes to clear |
19 | * Returns : number of bytes NOT cleared | 19 | * Returns : number of bytes NOT cleared |
20 | */ | 20 | */ |
21 | ENTRY(__arch_clear_user) | 21 | ENTRY(__clear_user) |
22 | stmfd sp!, {r1, lr} | 22 | stmfd sp!, {r1, lr} |
23 | mov r2, #0 | 23 | mov r2, #0 |
24 | cmp r1, #4 | 24 | cmp r1, #4 |
diff --git a/arch/arm/lib/copy_from_user.S b/arch/arm/lib/copy_from_user.S index 7497393a0e81..6b7363ce749c 100644 --- a/arch/arm/lib/copy_from_user.S +++ b/arch/arm/lib/copy_from_user.S | |||
@@ -16,7 +16,7 @@ | |||
16 | /* | 16 | /* |
17 | * Prototype: | 17 | * Prototype: |
18 | * | 18 | * |
19 | * size_t __arch_copy_from_user(void *to, const void *from, size_t n) | 19 | * size_t __copy_from_user(void *to, const void *from, size_t n) |
20 | * | 20 | * |
21 | * Purpose: | 21 | * Purpose: |
22 | * | 22 | * |
@@ -83,7 +83,7 @@ | |||
83 | 83 | ||
84 | .text | 84 | .text |
85 | 85 | ||
86 | ENTRY(__arch_copy_from_user) | 86 | ENTRY(__copy_from_user) |
87 | 87 | ||
88 | #include "copy_template.S" | 88 | #include "copy_template.S" |
89 | 89 | ||
diff --git a/arch/arm/lib/copy_to_user.S b/arch/arm/lib/copy_to_user.S index 4a6d8ea14022..5224d94688d9 100644 --- a/arch/arm/lib/copy_to_user.S +++ b/arch/arm/lib/copy_to_user.S | |||
@@ -16,7 +16,7 @@ | |||
16 | /* | 16 | /* |
17 | * Prototype: | 17 | * Prototype: |
18 | * | 18 | * |
19 | * size_t __arch_copy_to_user(void *to, const void *from, size_t n) | 19 | * size_t __copy_to_user(void *to, const void *from, size_t n) |
20 | * | 20 | * |
21 | * Purpose: | 21 | * Purpose: |
22 | * | 22 | * |
@@ -86,7 +86,7 @@ | |||
86 | 86 | ||
87 | .text | 87 | .text |
88 | 88 | ||
89 | ENTRY(__arch_copy_to_user) | 89 | ENTRY(__copy_to_user) |
90 | 90 | ||
91 | #include "copy_template.S" | 91 | #include "copy_template.S" |
92 | 92 | ||
diff --git a/arch/arm/lib/strncpy_from_user.S b/arch/arm/lib/strncpy_from_user.S index 35649f04fcac..36e3741a3772 100644 --- a/arch/arm/lib/strncpy_from_user.S +++ b/arch/arm/lib/strncpy_from_user.S | |||
@@ -20,7 +20,7 @@ | |||
20 | * returns the number of characters copied (strlen of copied string), | 20 | * returns the number of characters copied (strlen of copied string), |
21 | * -EFAULT on exception, or "len" if we fill the whole buffer | 21 | * -EFAULT on exception, or "len" if we fill the whole buffer |
22 | */ | 22 | */ |
23 | ENTRY(__arch_strncpy_from_user) | 23 | ENTRY(__strncpy_from_user) |
24 | mov ip, r1 | 24 | mov ip, r1 |
25 | 1: subs r2, r2, #1 | 25 | 1: subs r2, r2, #1 |
26 | USER( ldrplbt r3, [r1], #1) | 26 | USER( ldrplbt r3, [r1], #1) |
diff --git a/arch/arm/lib/strnlen_user.S b/arch/arm/lib/strnlen_user.S index 3668a15991ef..18d8fa4f925a 100644 --- a/arch/arm/lib/strnlen_user.S +++ b/arch/arm/lib/strnlen_user.S | |||
@@ -14,13 +14,13 @@ | |||
14 | .text | 14 | .text |
15 | .align 5 | 15 | .align 5 |
16 | 16 | ||
17 | /* Prototype: unsigned long __arch_strnlen_user(const char *str, long n) | 17 | /* Prototype: unsigned long __strnlen_user(const char *str, long n) |
18 | * Purpose : get length of a string in user memory | 18 | * Purpose : get length of a string in user memory |
19 | * Params : str - address of string in user memory | 19 | * Params : str - address of string in user memory |
20 | * Returns : length of string *including terminator* | 20 | * Returns : length of string *including terminator* |
21 | * or zero on exception, or n + 1 if too long | 21 | * or zero on exception, or n + 1 if too long |
22 | */ | 22 | */ |
23 | ENTRY(__arch_strnlen_user) | 23 | ENTRY(__strnlen_user) |
24 | mov r2, r0 | 24 | mov r2, r0 |
25 | 1: | 25 | 1: |
26 | USER( ldrbt r3, [r0], #1) | 26 | USER( ldrbt r3, [r0], #1) |
diff --git a/arch/arm/lib/uaccess.S b/arch/arm/lib/uaccess.S index 1f1545d737be..b48bd6d5fd83 100644 --- a/arch/arm/lib/uaccess.S +++ b/arch/arm/lib/uaccess.S | |||
@@ -19,7 +19,7 @@ | |||
19 | 19 | ||
20 | #define PAGE_SHIFT 12 | 20 | #define PAGE_SHIFT 12 |
21 | 21 | ||
22 | /* Prototype: int __arch_copy_to_user(void *to, const char *from, size_t n) | 22 | /* Prototype: int __copy_to_user(void *to, const char *from, size_t n) |
23 | * Purpose : copy a block to user memory from kernel memory | 23 | * Purpose : copy a block to user memory from kernel memory |
24 | * Params : to - user memory | 24 | * Params : to - user memory |
25 | * : from - kernel memory | 25 | * : from - kernel memory |
@@ -39,7 +39,7 @@ USER( strgtbt r3, [r0], #1) @ May fault | |||
39 | sub r2, r2, ip | 39 | sub r2, r2, ip |
40 | b .Lc2u_dest_aligned | 40 | b .Lc2u_dest_aligned |
41 | 41 | ||
42 | ENTRY(__arch_copy_to_user) | 42 | ENTRY(__copy_to_user) |
43 | stmfd sp!, {r2, r4 - r7, lr} | 43 | stmfd sp!, {r2, r4 - r7, lr} |
44 | cmp r2, #4 | 44 | cmp r2, #4 |
45 | blt .Lc2u_not_enough | 45 | blt .Lc2u_not_enough |
@@ -283,7 +283,7 @@ USER( strgtbt r3, [r0], #1) @ May fault | |||
283 | 9001: ldmfd sp!, {r0, r4 - r7, pc} | 283 | 9001: ldmfd sp!, {r0, r4 - r7, pc} |
284 | .previous | 284 | .previous |
285 | 285 | ||
286 | /* Prototype: unsigned long __arch_copy_from_user(void *to,const void *from,unsigned long n); | 286 | /* Prototype: unsigned long __copy_from_user(void *to,const void *from,unsigned long n); |
287 | * Purpose : copy a block from user memory to kernel memory | 287 | * Purpose : copy a block from user memory to kernel memory |
288 | * Params : to - kernel memory | 288 | * Params : to - kernel memory |
289 | * : from - user memory | 289 | * : from - user memory |
@@ -302,7 +302,7 @@ USER( ldrgtbt r3, [r1], #1) @ May fault | |||
302 | sub r2, r2, ip | 302 | sub r2, r2, ip |
303 | b .Lcfu_dest_aligned | 303 | b .Lcfu_dest_aligned |
304 | 304 | ||
305 | ENTRY(__arch_copy_from_user) | 305 | ENTRY(__copy_from_user) |
306 | stmfd sp!, {r0, r2, r4 - r7, lr} | 306 | stmfd sp!, {r0, r2, r4 - r7, lr} |
307 | cmp r2, #4 | 307 | cmp r2, #4 |
308 | blt .Lcfu_not_enough | 308 | blt .Lcfu_not_enough |