aboutsummaryrefslogtreecommitdiffstats
path: root/arch/parisc/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'arch/parisc/kernel')
-rw-r--r--arch/parisc/kernel/entry.S3
-rw-r--r--arch/parisc/kernel/head.S1
-rw-r--r--arch/parisc/kernel/hpmc.S3
-rw-r--r--arch/parisc/kernel/init_task.c1
-rw-r--r--arch/parisc/kernel/pacache.S3
-rw-r--r--arch/parisc/kernel/parisc_ksyms.c3
-rw-r--r--arch/parisc/kernel/perf_asm.S2
-rw-r--r--arch/parisc/kernel/real2.S13
-rw-r--r--arch/parisc/kernel/signal32.c4
-rw-r--r--arch/parisc/kernel/syscall.S5
-rw-r--r--arch/parisc/kernel/vmlinux.lds.S1
11 files changed, 19 insertions, 20 deletions
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)
33END(boot_args) 33END(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
78END(hpmc_pim_data) 77END(hpmc_pim_data)
79 78
80 __HEAD 79 .text
81 80
82 .import intr_save, code 81 .import intr_save, code
83ENTRY(os_hpmc) 82ENTRY(os_hpmc)
diff --git a/arch/parisc/kernel/init_task.c b/arch/parisc/kernel/init_task.c
index 26198a074d67..f5941c086551 100644
--- a/arch/parisc/kernel/init_task.c
+++ b/arch/parisc/kernel/init_task.c
@@ -35,7 +35,6 @@
35#include <asm/pgalloc.h> 35#include <asm/pgalloc.h>
36 36
37static struct fs_struct init_fs = INIT_FS; 37static struct fs_struct init_fs = INIT_FS;
38static struct files_struct init_files = INIT_FILES;
39static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 38static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
40static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 39static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
41struct mm_struct init_mm = INIT_MM(init_mm); 40struct mm_struct init_mm = INIT_MM(init_mm);
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
45ENTRY(flush_tlb_all_local) 44ENTRY(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);
152EXPORT_SYMBOL(node_data); 152EXPORT_SYMBOL(node_data);
153EXPORT_SYMBOL(pfnnid_map); 153EXPORT_SYMBOL(pfnnid_map);
154#endif 154#endif
155
156/* from pacache.S -- needed for copy_page */
157EXPORT_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
48ENTRY(perf_intrigue_enable_perf_counters) 48ENTRY(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
118save_control_regs: 117save_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
151rfi_virt2real: 150rfi_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
186rfi_real2virt: 185rfi_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
642ENTRY(lws_lock_start) 641ENTRY(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