From a2efa4756a9dda1acbc0bf17ad00438166df8107 Mon Sep 17 00:00:00 2001 From: Douglas Leung Date: Mon, 25 Mar 2013 13:21:11 -0500 Subject: [PATCH] --- yaml --- r: 375208 b: refs/heads/master c: 01be057b33f52f094bff3a79a93d9ca99e27483d h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/mips/kernel/signal.c | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 72ef5588fa77..7a9136b9f8bf 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 34c2f668d0f6b2ca1c076d8170d6cd4f2235a9d4 +refs/heads/master: 01be057b33f52f094bff3a79a93d9ca99e27483d diff --git a/trunk/arch/mips/kernel/signal.c b/trunk/arch/mips/kernel/signal.c index b5e88fd83277..fd3ef2c2afbc 100644 --- a/trunk/arch/mips/kernel/signal.c +++ b/trunk/arch/mips/kernel/signal.c @@ -35,6 +35,7 @@ #include #include #include +#include #include "signal-common.h" @@ -480,7 +481,15 @@ static void handle_signal(unsigned long sig, siginfo_t *info, sigset_t *oldset = sigmask_to_save(); int ret; struct mips_abi *abi = current->thread.abi; +#ifdef CONFIG_CPU_MICROMIPS + void *vdso; + unsigned int tmp = (unsigned int)current->mm->context.vdso; + + set_isa16_mode(tmp); + vdso = (void *)tmp; +#else void *vdso = current->mm->context.vdso; +#endif if (regs->regs[0]) { switch(regs->regs[2]) {