aboutsummaryrefslogtreecommitdiffstats
path: root/arch/ppc/kernel/traps.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/ppc/kernel/traps.c')
-rw-r--r--arch/ppc/kernel/traps.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/ppc/kernel/traps.c b/arch/ppc/kernel/traps.c
index ed5c7acdca7..aec225b402a 100644
--- a/arch/ppc/kernel/traps.c
+++ b/arch/ppc/kernel/traps.c
@@ -805,6 +805,13 @@ void AltivecAssistException(struct pt_regs *regs)
805 if (regs->msr & MSR_VEC) 805 if (regs->msr & MSR_VEC)
806 giveup_altivec(current); 806 giveup_altivec(current);
807 preempt_enable(); 807 preempt_enable();
808 if (!user_mode(regs)) {
809 printk(KERN_ERR "altivec assist exception in kernel mode"
810 " at %lx\n", regs->nip);
811 debugger(regs);
812 die("altivec assist exception", regs, SIGFPE);
813 return;
814 }
808 815
809 err = emulate_altivec(regs); 816 err = emulate_altivec(regs);
810 if (err == 0) { 817 if (err == 0) {