diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-08-04 20:26:15 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-08-04 20:26:15 -0400 |
commit | 2e1e9212ed8c532c6b324de77d3cafef5d2bc846 (patch) | |
tree | 15097a99d03679f2c95ea2fdc0eb3c3ebcc474b8 /arch/sh/include/asm | |
parent | 2acb802b0c5485aedb46e23b2b45e49573454c09 (diff) | |
parent | f5663f5bded3364158e2d31904173cb1debc2ecd (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (29 commits)
sh: enable maple_keyb in dreamcast_defconfig.
SH2(A) cache update
nommu: Provide vmalloc_exec().
add addrespace definition for sh2a.
sh: Kill off ARCH_SUPPORTS_AOUT and remnants of a.out support.
sh: define GENERIC_HARDIRQS_NO__DO_IRQ.
sh: define GENERIC_LOCKBREAK.
sh: Save NUMA node data in vmcore for crash dumps.
sh: module_alloc() should be using vmalloc_exec().
sh: Fix up __bug_table handling in module loader.
sh: Add documentation and integrate into docbook build.
sh: Fix up broken kerneldoc comments.
maple: Kill useless private_data pointer.
maple: Clean up maple_driver_register/unregister routines.
input: Clean up maple keyboard driver
maple: allow removal and reinsertion of keyboard driver module
sh: /proc/asids depends on MMU.
arch/sh/boards/mach-se/7343/irq.c: removed duplicated #include
arch/sh/boards/board-ap325rxa.c: removed duplicated #include
sh/boards/Makefile typo fix
...
Diffstat (limited to 'arch/sh/include/asm')
-rw-r--r-- | arch/sh/include/asm/a.out.h | 20 | ||||
-rw-r--r-- | arch/sh/include/asm/ptrace.h | 9 | ||||
-rw-r--r-- | arch/sh/include/asm/seccomp.h | 10 | ||||
-rw-r--r-- | arch/sh/include/asm/thread_info.h | 51 | ||||
-rw-r--r-- | arch/sh/include/asm/tlb_64.h | 12 |
5 files changed, 58 insertions, 44 deletions
diff --git a/arch/sh/include/asm/a.out.h b/arch/sh/include/asm/a.out.h deleted file mode 100644 index 1f93130e179c..000000000000 --- a/arch/sh/include/asm/a.out.h +++ /dev/null | |||
@@ -1,20 +0,0 @@ | |||
1 | #ifndef __ASM_SH_A_OUT_H | ||
2 | #define __ASM_SH_A_OUT_H | ||
3 | |||
4 | struct exec | ||
5 | { | ||
6 | unsigned long a_info; /* Use macros N_MAGIC, etc for access */ | ||
7 | unsigned a_text; /* length of text, in bytes */ | ||
8 | unsigned a_data; /* length of data, in bytes */ | ||
9 | unsigned a_bss; /* length of uninitialized data area for file, in bytes */ | ||
10 | unsigned a_syms; /* length of symbol table data in file, in bytes */ | ||
11 | unsigned a_entry; /* start address */ | ||
12 | unsigned a_trsize; /* length of relocation info for text, in bytes */ | ||
13 | unsigned a_drsize; /* length of relocation info for data, in bytes */ | ||
14 | }; | ||
15 | |||
16 | #define N_TRSIZE(a) ((a).a_trsize) | ||
17 | #define N_DRSIZE(a) ((a).a_drsize) | ||
18 | #define N_SYMSIZE(a) ((a).a_syms) | ||
19 | |||
20 | #endif /* __ASM_SH_A_OUT_H */ | ||
diff --git a/arch/sh/include/asm/ptrace.h b/arch/sh/include/asm/ptrace.h index 643ab5a7cf3b..b86aeabba61a 100644 --- a/arch/sh/include/asm/ptrace.h +++ b/arch/sh/include/asm/ptrace.h | |||
@@ -104,6 +104,15 @@ struct pt_dspregs { | |||
104 | 104 | ||
105 | extern void show_regs(struct pt_regs *); | 105 | extern void show_regs(struct pt_regs *); |
106 | 106 | ||
107 | /* | ||
108 | * These are defined as per linux/ptrace.h. | ||
109 | */ | ||
110 | struct task_struct; | ||
111 | |||
112 | #define arch_has_single_step() (1) | ||
113 | extern void user_enable_single_step(struct task_struct *); | ||
114 | extern void user_disable_single_step(struct task_struct *); | ||
115 | |||
107 | #ifdef CONFIG_SH_DSP | 116 | #ifdef CONFIG_SH_DSP |
108 | #define task_pt_regs(task) \ | 117 | #define task_pt_regs(task) \ |
109 | ((struct pt_regs *) (task_stack_page(task) + THREAD_SIZE \ | 118 | ((struct pt_regs *) (task_stack_page(task) + THREAD_SIZE \ |
diff --git a/arch/sh/include/asm/seccomp.h b/arch/sh/include/asm/seccomp.h new file mode 100644 index 000000000000..3280ed3802ef --- /dev/null +++ b/arch/sh/include/asm/seccomp.h | |||
@@ -0,0 +1,10 @@ | |||
1 | #ifndef __ASM_SECCOMP_H | ||
2 | |||
3 | #include <linux/unistd.h> | ||
4 | |||
5 | #define __NR_seccomp_read __NR_read | ||
6 | #define __NR_seccomp_write __NR_write | ||
7 | #define __NR_seccomp_exit __NR_exit | ||
8 | #define __NR_seccomp_sigreturn __NR_rt_sigreturn | ||
9 | |||
10 | #endif /* __ASM_SECCOMP_H */ | ||
diff --git a/arch/sh/include/asm/thread_info.h b/arch/sh/include/asm/thread_info.h index eeb4c747119e..0a894cafb1dd 100644 --- a/arch/sh/include/asm/thread_info.h +++ b/arch/sh/include/asm/thread_info.h | |||
@@ -117,24 +117,45 @@ static inline struct thread_info *current_thread_info(void) | |||
117 | #define TIF_NEED_RESCHED 2 /* rescheduling necessary */ | 117 | #define TIF_NEED_RESCHED 2 /* rescheduling necessary */ |
118 | #define TIF_RESTORE_SIGMASK 3 /* restore signal mask in do_signal() */ | 118 | #define TIF_RESTORE_SIGMASK 3 /* restore signal mask in do_signal() */ |
119 | #define TIF_SINGLESTEP 4 /* singlestepping active */ | 119 | #define TIF_SINGLESTEP 4 /* singlestepping active */ |
120 | #define TIF_SYSCALL_AUDIT 5 | 120 | #define TIF_SYSCALL_AUDIT 5 /* syscall auditing active */ |
121 | #define TIF_SECCOMP 6 /* secure computing */ | ||
122 | #define TIF_NOTIFY_RESUME 7 /* callback before returning to user */ | ||
121 | #define TIF_USEDFPU 16 /* FPU was used by this task this quantum (SMP) */ | 123 | #define TIF_USEDFPU 16 /* FPU was used by this task this quantum (SMP) */ |
122 | #define TIF_POLLING_NRFLAG 17 /* true if poll_idle() is polling TIF_NEED_RESCHED */ | 124 | #define TIF_POLLING_NRFLAG 17 /* true if poll_idle() is polling TIF_NEED_RESCHED */ |
123 | #define TIF_MEMDIE 18 | 125 | #define TIF_MEMDIE 18 |
124 | #define TIF_FREEZE 19 | 126 | #define TIF_FREEZE 19 /* Freezing for suspend */ |
125 | 127 | ||
126 | #define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE) | 128 | #define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE) |
127 | #define _TIF_SIGPENDING (1<<TIF_SIGPENDING) | 129 | #define _TIF_SIGPENDING (1 << TIF_SIGPENDING) |
128 | #define _TIF_NEED_RESCHED (1<<TIF_NEED_RESCHED) | 130 | #define _TIF_NEED_RESCHED (1 << TIF_NEED_RESCHED) |
129 | #define _TIF_RESTORE_SIGMASK (1<<TIF_RESTORE_SIGMASK) | 131 | #define _TIF_RESTORE_SIGMASK (1 << TIF_RESTORE_SIGMASK) |
130 | #define _TIF_SINGLESTEP (1<<TIF_SINGLESTEP) | 132 | #define _TIF_SINGLESTEP (1 << TIF_SINGLESTEP) |
131 | #define _TIF_SYSCALL_AUDIT (1<<TIF_SYSCALL_AUDIT) | 133 | #define _TIF_SYSCALL_AUDIT (1 << TIF_SYSCALL_AUDIT) |
132 | #define _TIF_USEDFPU (1<<TIF_USEDFPU) | 134 | #define _TIF_SECCOMP (1 << TIF_SECCOMP) |
133 | #define _TIF_POLLING_NRFLAG (1<<TIF_POLLING_NRFLAG) | 135 | #define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME) |
134 | #define _TIF_FREEZE (1<<TIF_FREEZE) | 136 | #define _TIF_USEDFPU (1 << TIF_USEDFPU) |
135 | 137 | #define _TIF_POLLING_NRFLAG (1 << TIF_POLLING_NRFLAG) | |
136 | #define _TIF_WORK_MASK 0x000000FE /* work to do on interrupt/exception return */ | 138 | #define _TIF_FREEZE (1 << TIF_FREEZE) |
137 | #define _TIF_ALLWORK_MASK 0x000000FF /* work to do on any return to u-space */ | 139 | |
140 | /* | ||
141 | * _TIF_ALLWORK_MASK and _TIF_WORK_MASK need to fit within a byte, or we | ||
142 | * blow the tst immediate size constraints and need to fix up | ||
143 | * arch/sh/kernel/entry-common.S. | ||
144 | */ | ||
145 | |||
146 | /* work to do in syscall trace */ | ||
147 | #define _TIF_WORK_SYSCALL_MASK (_TIF_SYSCALL_TRACE | _TIF_SINGLESTEP | \ | ||
148 | _TIF_SYSCALL_AUDIT | _TIF_SECCOMP) | ||
149 | |||
150 | /* work to do on any return to u-space */ | ||
151 | #define _TIF_ALLWORK_MASK (_TIF_SYSCALL_TRACE | _TIF_SIGPENDING | \ | ||
152 | _TIF_NEED_RESCHED | _TIF_SYSCALL_AUDIT | \ | ||
153 | _TIF_SINGLESTEP | _TIF_RESTORE_SIGMASK | \ | ||
154 | _TIF_NOTIFY_RESUME) | ||
155 | |||
156 | /* work to do on interrupt/exception return */ | ||
157 | #define _TIF_WORK_MASK (_TIF_ALLWORK_MASK & ~(_TIF_SYSCALL_TRACE | \ | ||
158 | _TIF_SYSCALL_AUDIT | _TIF_SINGLESTEP)) | ||
138 | 159 | ||
139 | #endif /* __KERNEL__ */ | 160 | #endif /* __KERNEL__ */ |
140 | 161 | ||
diff --git a/arch/sh/include/asm/tlb_64.h b/arch/sh/include/asm/tlb_64.h index 0a96f3af69e3..ef0ae2a28f23 100644 --- a/arch/sh/include/asm/tlb_64.h +++ b/arch/sh/include/asm/tlb_64.h | |||
@@ -21,11 +21,9 @@ | |||
21 | #ifndef __ASSEMBLY__ | 21 | #ifndef __ASSEMBLY__ |
22 | 22 | ||
23 | /** | 23 | /** |
24 | * for_each_dtlb_entry | 24 | * for_each_dtlb_entry - Iterate over free (non-wired) DTLB entries |
25 | * | 25 | * |
26 | * @tlb: TLB entry | 26 | * @tlb: TLB entry |
27 | * | ||
28 | * Iterate over free (non-wired) DTLB entries | ||
29 | */ | 27 | */ |
30 | #define for_each_dtlb_entry(tlb) \ | 28 | #define for_each_dtlb_entry(tlb) \ |
31 | for (tlb = cpu_data->dtlb.first; \ | 29 | for (tlb = cpu_data->dtlb.first; \ |
@@ -33,11 +31,9 @@ | |||
33 | tlb += cpu_data->dtlb.step) | 31 | tlb += cpu_data->dtlb.step) |
34 | 32 | ||
35 | /** | 33 | /** |
36 | * for_each_itlb_entry | 34 | * for_each_itlb_entry - Iterate over free (non-wired) ITLB entries |
37 | * | 35 | * |
38 | * @tlb: TLB entry | 36 | * @tlb: TLB entry |
39 | * | ||
40 | * Iterate over free (non-wired) ITLB entries | ||
41 | */ | 37 | */ |
42 | #define for_each_itlb_entry(tlb) \ | 38 | #define for_each_itlb_entry(tlb) \ |
43 | for (tlb = cpu_data->itlb.first; \ | 39 | for (tlb = cpu_data->itlb.first; \ |
@@ -45,11 +41,9 @@ | |||
45 | tlb += cpu_data->itlb.step) | 41 | tlb += cpu_data->itlb.step) |
46 | 42 | ||
47 | /** | 43 | /** |
48 | * __flush_tlb_slot | 44 | * __flush_tlb_slot - Flushes TLB slot @slot. |
49 | * | 45 | * |
50 | * @slot: Address of TLB slot. | 46 | * @slot: Address of TLB slot. |
51 | * | ||
52 | * Flushes TLB slot @slot. | ||
53 | */ | 47 | */ |
54 | static inline void __flush_tlb_slot(unsigned long long slot) | 48 | static inline void __flush_tlb_slot(unsigned long long slot) |
55 | { | 49 | { |