diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-06-13 12:47:07 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-06-13 12:47:07 -0400 |
commit | 7775c9753b94fe429dc4323360d6502c95e0dd6e (patch) | |
tree | 5e89c5d2186e52591eb1945213ccb812e0411d5d /arch | |
parent | fa8d84b78be10d0c455dd716f40152bb7003bd5b (diff) | |
parent | 42a5a8a60a093c359987fd884aec99b9d7f4c084 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6:
parisc: update my email address
parisc: fix miscompilation of ip_fast_csum with gcc >= 4.3
parisc: fix off by one in setup_sigcontext32
parisc: export empty_zero_page
parisc: export copy_user_page_asm
parisc: move head.S to head.text section
Revert "parisc: fix trivial section name warnings"
Diffstat (limited to 'arch')
-rw-r--r-- | arch/parisc/hpux/gate.S | 3 | ||||
-rw-r--r-- | arch/parisc/hpux/wrappers.S | 3 | ||||
-rw-r--r-- | arch/parisc/kernel/entry.S | 3 | ||||
-rw-r--r-- | arch/parisc/kernel/head.S | 1 | ||||
-rw-r--r-- | arch/parisc/kernel/hpmc.S | 3 | ||||
-rw-r--r-- | arch/parisc/kernel/pacache.S | 3 | ||||
-rw-r--r-- | arch/parisc/kernel/parisc_ksyms.c | 3 | ||||
-rw-r--r-- | arch/parisc/kernel/perf_asm.S | 2 | ||||
-rw-r--r-- | arch/parisc/kernel/real2.S | 13 | ||||
-rw-r--r-- | arch/parisc/kernel/signal32.c | 4 | ||||
-rw-r--r-- | arch/parisc/kernel/syscall.S | 5 | ||||
-rw-r--r-- | arch/parisc/kernel/vmlinux.lds.S | 1 | ||||
-rw-r--r-- | arch/parisc/lib/fixup.S | 3 | ||||
-rw-r--r-- | arch/parisc/lib/lusercopy.S | 5 | ||||
-rw-r--r-- | arch/parisc/mm/init.c | 1 |
15 files changed, 25 insertions, 28 deletions
diff --git a/arch/parisc/hpux/gate.S b/arch/parisc/hpux/gate.S index f0b18ce89842..38a1c1b8d4e8 100644 --- a/arch/parisc/hpux/gate.S +++ b/arch/parisc/hpux/gate.S | |||
@@ -13,10 +13,9 @@ | |||
13 | #include <asm/unistd.h> | 13 | #include <asm/unistd.h> |
14 | #include <asm/errno.h> | 14 | #include <asm/errno.h> |
15 | #include <linux/linkage.h> | 15 | #include <linux/linkage.h> |
16 | #include <linux/init.h> | ||
17 | 16 | ||
18 | .level LEVEL | 17 | .level LEVEL |
19 | __HEAD | 18 | .text |
20 | 19 | ||
21 | .import hpux_call_table | 20 | .import hpux_call_table |
22 | .import hpux_syscall_exit,code | 21 | .import hpux_syscall_exit,code |
diff --git a/arch/parisc/hpux/wrappers.S b/arch/parisc/hpux/wrappers.S index ccd3a50c0995..58c53c879c02 100644 --- a/arch/parisc/hpux/wrappers.S +++ b/arch/parisc/hpux/wrappers.S | |||
@@ -28,10 +28,9 @@ | |||
28 | #include <asm/assembly.h> | 28 | #include <asm/assembly.h> |
29 | #include <asm/signal.h> | 29 | #include <asm/signal.h> |
30 | #include <linux/linkage.h> | 30 | #include <linux/linkage.h> |
31 | #include <linux/init.h> | ||
32 | 31 | ||
33 | .level LEVEL | 32 | .level LEVEL |
34 | __HEAD | 33 | .text |
35 | 34 | ||
36 | /* These should probably go in a header file somewhere. | 35 | /* These should probably go in a header file somewhere. |
37 | * They are duplicated in kernel/wrappers.S | 36 | * They are duplicated in kernel/wrappers.S |
diff --git a/arch/parisc/kernel/entry.S b/arch/parisc/kernel/entry.S index 5d0837458c19..d1fa4edd2d80 100644 --- a/arch/parisc/kernel/entry.S +++ b/arch/parisc/kernel/entry.S | |||
@@ -38,7 +38,6 @@ | |||
38 | #include <asm/thread_info.h> | 38 | #include <asm/thread_info.h> |
39 | 39 | ||
40 | #include <linux/linkage.h> | 40 | #include <linux/linkage.h> |
41 | #include <linux/init.h> | ||
42 | 41 | ||
43 | #ifdef CONFIG_64BIT | 42 | #ifdef CONFIG_64BIT |
44 | .level 2.0w | 43 | .level 2.0w |
@@ -622,7 +621,7 @@ | |||
622 | * the static part of the kernel address space. | 621 | * the static part of the kernel address space. |
623 | */ | 622 | */ |
624 | 623 | ||
625 | __HEAD | 624 | .text |
626 | 625 | ||
627 | .align PAGE_SIZE | 626 | .align PAGE_SIZE |
628 | 627 | ||
diff --git a/arch/parisc/kernel/head.S b/arch/parisc/kernel/head.S index 5680a2c3b13d..a84e31e82876 100644 --- a/arch/parisc/kernel/head.S +++ b/arch/parisc/kernel/head.S | |||
@@ -33,6 +33,7 @@ ENTRY(boot_args) | |||
33 | END(boot_args) | 33 | END(boot_args) |
34 | 34 | ||
35 | __HEAD | 35 | __HEAD |
36 | |||
36 | .align 4 | 37 | .align 4 |
37 | .import init_thread_union,data | 38 | .import init_thread_union,data |
38 | .import fault_vector_20,code /* IVA parisc 2.0 32 bit */ | 39 | .import fault_vector_20,code /* IVA parisc 2.0 32 bit */ |
diff --git a/arch/parisc/kernel/hpmc.S b/arch/parisc/kernel/hpmc.S index 068322eb8c9b..2cbf13b3ef11 100644 --- a/arch/parisc/kernel/hpmc.S +++ b/arch/parisc/kernel/hpmc.S | |||
@@ -47,7 +47,6 @@ | |||
47 | #include <asm/pdc.h> | 47 | #include <asm/pdc.h> |
48 | 48 | ||
49 | #include <linux/linkage.h> | 49 | #include <linux/linkage.h> |
50 | #include <linux/init.h> | ||
51 | 50 | ||
52 | /* | 51 | /* |
53 | * stack for os_hpmc, the HPMC handler. | 52 | * stack for os_hpmc, the HPMC handler. |
@@ -77,7 +76,7 @@ ENTRY(hpmc_pim_data) | |||
77 | .block HPMC_PIM_DATA_SIZE | 76 | .block HPMC_PIM_DATA_SIZE |
78 | END(hpmc_pim_data) | 77 | END(hpmc_pim_data) |
79 | 78 | ||
80 | __HEAD | 79 | .text |
81 | 80 | ||
82 | .import intr_save, code | 81 | .import intr_save, code |
83 | ENTRY(os_hpmc) | 82 | ENTRY(os_hpmc) |
diff --git a/arch/parisc/kernel/pacache.S b/arch/parisc/kernel/pacache.S index e3246a5ca74f..09b77b2553c6 100644 --- a/arch/parisc/kernel/pacache.S +++ b/arch/parisc/kernel/pacache.S | |||
@@ -37,9 +37,8 @@ | |||
37 | #include <asm/pgtable.h> | 37 | #include <asm/pgtable.h> |
38 | #include <asm/cache.h> | 38 | #include <asm/cache.h> |
39 | #include <linux/linkage.h> | 39 | #include <linux/linkage.h> |
40 | #include <linux/init.h> | ||
41 | 40 | ||
42 | __HEAD | 41 | .text |
43 | .align 128 | 42 | .align 128 |
44 | 43 | ||
45 | ENTRY(flush_tlb_all_local) | 44 | ENTRY(flush_tlb_all_local) |
diff --git a/arch/parisc/kernel/parisc_ksyms.c b/arch/parisc/kernel/parisc_ksyms.c index 5b7fc4aa044d..0eecfbbc59cd 100644 --- a/arch/parisc/kernel/parisc_ksyms.c +++ b/arch/parisc/kernel/parisc_ksyms.c | |||
@@ -152,3 +152,6 @@ EXPORT_SYMBOL($$dyncall); | |||
152 | EXPORT_SYMBOL(node_data); | 152 | EXPORT_SYMBOL(node_data); |
153 | EXPORT_SYMBOL(pfnnid_map); | 153 | EXPORT_SYMBOL(pfnnid_map); |
154 | #endif | 154 | #endif |
155 | |||
156 | /* from pacache.S -- needed for copy_page */ | ||
157 | EXPORT_SYMBOL(copy_user_page_asm); | ||
diff --git a/arch/parisc/kernel/perf_asm.S b/arch/parisc/kernel/perf_asm.S index d411dfb5b6d1..fa6ea99bb324 100644 --- a/arch/parisc/kernel/perf_asm.S +++ b/arch/parisc/kernel/perf_asm.S | |||
@@ -43,7 +43,7 @@ | |||
43 | ; The coprocessor only needs to be enabled when | 43 | ; The coprocessor only needs to be enabled when |
44 | ; starting/stopping the coprocessor with the pmenb/pmdis. | 44 | ; starting/stopping the coprocessor with the pmenb/pmdis. |
45 | ; | 45 | ; |
46 | __HEAD | 46 | .text |
47 | 47 | ||
48 | ENTRY(perf_intrigue_enable_perf_counters) | 48 | ENTRY(perf_intrigue_enable_perf_counters) |
49 | .proc | 49 | .proc |
diff --git a/arch/parisc/kernel/real2.S b/arch/parisc/kernel/real2.S index 47fbdae6efd5..7a92695d95a6 100644 --- a/arch/parisc/kernel/real2.S +++ b/arch/parisc/kernel/real2.S | |||
@@ -12,7 +12,6 @@ | |||
12 | #include <asm/assembly.h> | 12 | #include <asm/assembly.h> |
13 | 13 | ||
14 | #include <linux/linkage.h> | 14 | #include <linux/linkage.h> |
15 | #include <linux/init.h> | ||
16 | 15 | ||
17 | .section .bss | 16 | .section .bss |
18 | .export real_stack | 17 | .export real_stack |
@@ -40,7 +39,7 @@ save_cr_end: | |||
40 | /************************ 32-bit real-mode calls ***********************/ | 39 | /************************ 32-bit real-mode calls ***********************/ |
41 | /* This can be called in both narrow and wide kernels */ | 40 | /* This can be called in both narrow and wide kernels */ |
42 | 41 | ||
43 | __HEAD | 42 | .text |
44 | 43 | ||
45 | /* unsigned long real32_call_asm(unsigned int *sp, | 44 | /* unsigned long real32_call_asm(unsigned int *sp, |
46 | * unsigned int *arg0p, | 45 | * unsigned int *arg0p, |
@@ -114,7 +113,7 @@ ENDPROC(real32_call_asm) | |||
114 | # define PUSH_CR(r, where) mfctl r, %r1 ! STREG,ma %r1, REG_SZ(where) | 113 | # define PUSH_CR(r, where) mfctl r, %r1 ! STREG,ma %r1, REG_SZ(where) |
115 | # define POP_CR(r, where) LDREG,mb -REG_SZ(where), %r1 ! mtctl %r1, r | 114 | # define POP_CR(r, where) LDREG,mb -REG_SZ(where), %r1 ! mtctl %r1, r |
116 | 115 | ||
117 | __HEAD | 116 | .text |
118 | save_control_regs: | 117 | save_control_regs: |
119 | load32 PA(save_cr_space), %r28 | 118 | load32 PA(save_cr_space), %r28 |
120 | PUSH_CR(%cr24, %r28) | 119 | PUSH_CR(%cr24, %r28) |
@@ -146,7 +145,7 @@ restore_control_regs: | |||
146 | /* rfi_virt2real() and rfi_real2virt() could perhaps be adapted for | 145 | /* rfi_virt2real() and rfi_real2virt() could perhaps be adapted for |
147 | * more general-purpose use by the several places which need RFIs | 146 | * more general-purpose use by the several places which need RFIs |
148 | */ | 147 | */ |
149 | __HEAD | 148 | .text |
150 | .align 128 | 149 | .align 128 |
151 | rfi_virt2real: | 150 | rfi_virt2real: |
152 | /* switch to real mode... */ | 151 | /* switch to real mode... */ |
@@ -181,7 +180,7 @@ rfi_v2r_1: | |||
181 | bv 0(%r2) | 180 | bv 0(%r2) |
182 | nop | 181 | nop |
183 | 182 | ||
184 | __HEAD | 183 | .text |
185 | .align 128 | 184 | .align 128 |
186 | rfi_real2virt: | 185 | rfi_real2virt: |
187 | rsm PSW_SM_I,%r0 | 186 | rsm PSW_SM_I,%r0 |
@@ -219,7 +218,7 @@ rfi_r2v_1: | |||
219 | 218 | ||
220 | /************************ 64-bit real-mode calls ***********************/ | 219 | /************************ 64-bit real-mode calls ***********************/ |
221 | /* This is only usable in wide kernels right now and will probably stay so */ | 220 | /* This is only usable in wide kernels right now and will probably stay so */ |
222 | __HEAD | 221 | .text |
223 | /* unsigned long real64_call_asm(unsigned long *sp, | 222 | /* unsigned long real64_call_asm(unsigned long *sp, |
224 | * unsigned long *arg0p, | 223 | * unsigned long *arg0p, |
225 | * unsigned long fn) | 224 | * unsigned long fn) |
@@ -277,7 +276,7 @@ ENDPROC(real64_call_asm) | |||
277 | 276 | ||
278 | #endif | 277 | #endif |
279 | 278 | ||
280 | __HEAD | 279 | .text |
281 | /* http://lists.parisc-linux.org/hypermail/parisc-linux/10916.html | 280 | /* http://lists.parisc-linux.org/hypermail/parisc-linux/10916.html |
282 | ** GCC 3.3 and later has a new function in libgcc.a for | 281 | ** GCC 3.3 and later has a new function in libgcc.a for |
283 | ** comparing function pointers. | 282 | ** comparing function pointers. |
diff --git a/arch/parisc/kernel/signal32.c b/arch/parisc/kernel/signal32.c index db94affe5c71..fb59852006de 100644 --- a/arch/parisc/kernel/signal32.c +++ b/arch/parisc/kernel/signal32.c | |||
@@ -289,7 +289,7 @@ setup_sigcontext32(struct compat_sigcontext __user *sc, struct compat_regfile __ | |||
289 | &sc->sc_iaoq[0], compat_reg); | 289 | &sc->sc_iaoq[0], compat_reg); |
290 | 290 | ||
291 | /* Store upper half */ | 291 | /* Store upper half */ |
292 | compat_reg = (compat_uint_t)(regs->gr[32] >> 32); | 292 | compat_reg = (compat_uint_t)(regs->gr[31] >> 32); |
293 | err |= __put_user(compat_reg, &rf->rf_iaoq[0]); | 293 | err |= __put_user(compat_reg, &rf->rf_iaoq[0]); |
294 | DBG(2,"setup_sigcontext32: upper half iaoq[0] = %#x\n", compat_reg); | 294 | DBG(2,"setup_sigcontext32: upper half iaoq[0] = %#x\n", compat_reg); |
295 | 295 | ||
@@ -299,7 +299,7 @@ setup_sigcontext32(struct compat_sigcontext __user *sc, struct compat_regfile __ | |||
299 | DBG(2,"setup_sigcontext32: sc->sc_iaoq[1] = %p <= %#x\n", | 299 | DBG(2,"setup_sigcontext32: sc->sc_iaoq[1] = %p <= %#x\n", |
300 | &sc->sc_iaoq[1], compat_reg); | 300 | &sc->sc_iaoq[1], compat_reg); |
301 | /* Store upper half */ | 301 | /* Store upper half */ |
302 | compat_reg = (compat_uint_t)((regs->gr[32]+4) >> 32); | 302 | compat_reg = (compat_uint_t)((regs->gr[31]+4) >> 32); |
303 | err |= __put_user(compat_reg, &rf->rf_iaoq[1]); | 303 | err |= __put_user(compat_reg, &rf->rf_iaoq[1]); |
304 | DBG(2,"setup_sigcontext32: upper half iaoq[1] = %#x\n", compat_reg); | 304 | DBG(2,"setup_sigcontext32: upper half iaoq[1] = %#x\n", compat_reg); |
305 | 305 | ||
diff --git a/arch/parisc/kernel/syscall.S b/arch/parisc/kernel/syscall.S index ae509d8cd03f..69b6eebc466e 100644 --- a/arch/parisc/kernel/syscall.S +++ b/arch/parisc/kernel/syscall.S | |||
@@ -17,7 +17,6 @@ | |||
17 | #include <asm/processor.h> | 17 | #include <asm/processor.h> |
18 | 18 | ||
19 | #include <linux/linkage.h> | 19 | #include <linux/linkage.h> |
20 | #include <linux/init.h> | ||
21 | 20 | ||
22 | /* We fill the empty parts of the gateway page with | 21 | /* We fill the empty parts of the gateway page with |
23 | * something that will kill the kernel or a | 22 | * something that will kill the kernel or a |
@@ -27,7 +26,7 @@ | |||
27 | 26 | ||
28 | .level LEVEL | 27 | .level LEVEL |
29 | 28 | ||
30 | __HEAD | 29 | .text |
31 | 30 | ||
32 | .import syscall_exit,code | 31 | .import syscall_exit,code |
33 | .import syscall_exit_rfi,code | 32 | .import syscall_exit_rfi,code |
@@ -637,7 +636,7 @@ END(sys_call_table64) | |||
637 | All light-weight-syscall atomic operations | 636 | All light-weight-syscall atomic operations |
638 | will use this set of locks | 637 | will use this set of locks |
639 | */ | 638 | */ |
640 | .section .data, "aw" | 639 | .section .data |
641 | .align PAGE_SIZE | 640 | .align PAGE_SIZE |
642 | ENTRY(lws_lock_start) | 641 | ENTRY(lws_lock_start) |
643 | /* lws locks */ | 642 | /* lws locks */ |
diff --git a/arch/parisc/kernel/vmlinux.lds.S b/arch/parisc/kernel/vmlinux.lds.S index 50b4a3a25d0a..2e516b871752 100644 --- a/arch/parisc/kernel/vmlinux.lds.S +++ b/arch/parisc/kernel/vmlinux.lds.S | |||
@@ -50,6 +50,7 @@ SECTIONS | |||
50 | 50 | ||
51 | _text = .; /* Text and read-only data */ | 51 | _text = .; /* Text and read-only data */ |
52 | .text ALIGN(16) : { | 52 | .text ALIGN(16) : { |
53 | HEAD_TEXT | ||
53 | TEXT_TEXT | 54 | TEXT_TEXT |
54 | SCHED_TEXT | 55 | SCHED_TEXT |
55 | LOCK_TEXT | 56 | LOCK_TEXT |
diff --git a/arch/parisc/lib/fixup.S b/arch/parisc/lib/fixup.S index 4821ad6d5269..d172d4245cdc 100644 --- a/arch/parisc/lib/fixup.S +++ b/arch/parisc/lib/fixup.S | |||
@@ -23,7 +23,6 @@ | |||
23 | #include <asm/assembly.h> | 23 | #include <asm/assembly.h> |
24 | #include <asm/errno.h> | 24 | #include <asm/errno.h> |
25 | #include <linux/linkage.h> | 25 | #include <linux/linkage.h> |
26 | #include <linux/init.h> | ||
27 | 26 | ||
28 | #ifdef CONFIG_SMP | 27 | #ifdef CONFIG_SMP |
29 | .macro get_fault_ip t1 t2 | 28 | .macro get_fault_ip t1 t2 |
@@ -56,7 +55,7 @@ | |||
56 | 55 | ||
57 | .level LEVEL | 56 | .level LEVEL |
58 | 57 | ||
59 | __HEAD | 58 | .text |
60 | .section .fixup, "ax" | 59 | .section .fixup, "ax" |
61 | 60 | ||
62 | /* get_user() fixups, store -EFAULT in r8, and 0 in r9 */ | 61 | /* get_user() fixups, store -EFAULT in r8, and 0 in r9 */ |
diff --git a/arch/parisc/lib/lusercopy.S b/arch/parisc/lib/lusercopy.S index b0d885350846..1bd23ccec17b 100644 --- a/arch/parisc/lib/lusercopy.S +++ b/arch/parisc/lib/lusercopy.S | |||
@@ -33,12 +33,11 @@ | |||
33 | */ | 33 | */ |
34 | 34 | ||
35 | 35 | ||
36 | .text | ||
37 | |||
36 | #include <asm/assembly.h> | 38 | #include <asm/assembly.h> |
37 | #include <asm/errno.h> | 39 | #include <asm/errno.h> |
38 | #include <linux/linkage.h> | 40 | #include <linux/linkage.h> |
39 | #include <linux/init.h> | ||
40 | |||
41 | __HEAD | ||
42 | 41 | ||
43 | /* | 42 | /* |
44 | * get_sr gets the appropriate space value into | 43 | * get_sr gets the appropriate space value into |
diff --git a/arch/parisc/mm/init.c b/arch/parisc/mm/init.c index 78fe252b92c3..ce0da689a89d 100644 --- a/arch/parisc/mm/init.c +++ b/arch/parisc/mm/init.c | |||
@@ -547,6 +547,7 @@ void __init mem_init(void) | |||
547 | } | 547 | } |
548 | 548 | ||
549 | unsigned long *empty_zero_page __read_mostly; | 549 | unsigned long *empty_zero_page __read_mostly; |
550 | EXPORT_SYMBOL(empty_zero_page); | ||
550 | 551 | ||
551 | void show_mem(void) | 552 | void show_mem(void) |
552 | { | 553 | { |