aboutsummaryrefslogtreecommitdiffstats
path: root/arch/microblaze/kernel
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-04-15 16:53:55 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2015-04-15 16:53:55 -0400
commitfa2e5c073a355465a2a8c9a2fbecf404f9857c3a (patch)
tree771be75e5436031ad53649634dffa67f6667b083 /arch/microblaze/kernel
parente44740c1a94b5d39b093045920f543a7bc135584 (diff)
parent97b2f0dc331474fb80ba4f4e4aee1d8e9ffbf7ce (diff)
Merge branch 'exec_domain_rip_v2' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/misc
Pull exec domain removal from Richard Weinberger: "This series removes execution domain support from Linux. The idea behind exec domains was to support different ABIs. The feature was never complete nor stable. Let's rip it out and make the kernel signal handling code less complicated" * 'exec_domain_rip_v2' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/misc: (27 commits) arm64: Removed unused variable sparc: Fix execution domain removal Remove rest of exec domains. arch: Remove exec_domain from remaining archs arc: Remove signal translation and exec_domain xtensa: Remove signal translation and exec_domain xtensa: Autogenerate offsets in struct thread_info x86: Remove signal translation and exec_domain unicore32: Remove signal translation and exec_domain um: Remove signal translation and exec_domain tile: Remove signal translation and exec_domain sparc: Remove signal translation and exec_domain sh: Remove signal translation and exec_domain s390: Remove signal translation and exec_domain mn10300: Remove signal translation and exec_domain microblaze: Remove signal translation and exec_domain m68k: Remove signal translation and exec_domain m32r: Remove signal translation and exec_domain m32r: Autogenerate offsets in struct thread_info frv: Remove signal translation and exec_domain ...
Diffstat (limited to 'arch/microblaze/kernel')
-rw-r--r--arch/microblaze/kernel/signal.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/arch/microblaze/kernel/signal.c b/arch/microblaze/kernel/signal.c
index 20ccd4e2baa5..97001524ca2d 100644
--- a/arch/microblaze/kernel/signal.c
+++ b/arch/microblaze/kernel/signal.c
@@ -158,7 +158,6 @@ static int setup_rt_frame(struct ksignal *ksig, sigset_t *set,
158{ 158{
159 struct rt_sigframe __user *frame; 159 struct rt_sigframe __user *frame;
160 int err = 0, sig = ksig->sig; 160 int err = 0, sig = ksig->sig;
161 unsigned long signal;
162 unsigned long address = 0; 161 unsigned long address = 0;
163#ifdef CONFIG_MMU 162#ifdef CONFIG_MMU
164 pmd_t *pmdp; 163 pmd_t *pmdp;
@@ -170,12 +169,6 @@ static int setup_rt_frame(struct ksignal *ksig, sigset_t *set,
170 if (!access_ok(VERIFY_WRITE, frame, sizeof(*frame))) 169 if (!access_ok(VERIFY_WRITE, frame, sizeof(*frame)))
171 return -EFAULT; 170 return -EFAULT;
172 171
173 signal = current_thread_info()->exec_domain
174 && current_thread_info()->exec_domain->signal_invmap
175 && sig < 32
176 ? current_thread_info()->exec_domain->signal_invmap[sig]
177 : (unsigned long)sig;
178
179 if (ksig->ka.sa.sa_flags & SA_SIGINFO) 172 if (ksig->ka.sa.sa_flags & SA_SIGINFO)
180 err |= copy_siginfo_to_user(&frame->info, &ksig->info); 173 err |= copy_siginfo_to_user(&frame->info, &ksig->info);
181 174
@@ -230,7 +223,7 @@ static int setup_rt_frame(struct ksignal *ksig, sigset_t *set,
230 regs->r1 = (unsigned long) frame; 223 regs->r1 = (unsigned long) frame;
231 224
232 /* Signal handler args: */ 225 /* Signal handler args: */
233 regs->r5 = signal; /* arg 0: signum */ 226 regs->r5 = sig; /* arg 0: signum */
234 regs->r6 = (unsigned long) &frame->info; /* arg 1: siginfo */ 227 regs->r6 = (unsigned long) &frame->info; /* arg 1: siginfo */
235 regs->r7 = (unsigned long) &frame->uc; /* arg2: ucontext */ 228 regs->r7 = (unsigned long) &frame->uc; /* arg2: ucontext */
236 /* Offset to handle microblaze rtid r14, 0 */ 229 /* Offset to handle microblaze rtid r14, 0 */