summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/traps.c
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2012-09-07 01:48:59 +0200
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2012-09-07 01:48:59 +0200
commitfff34b3412b9401a76ba9d021db1bd91cb0e02b6 (patch)
tree870ed2d1555004e7939d15b5099017aae61c97b8 /arch/powerpc/kernel/traps.c
parentpowerpc/kprobes: Rename opcode_t in probes.h to ppc_opcode_t (diff)
parentpowerpc: Don't use __put_user() in patch_instruction (diff)
downloadlinux-fff34b3412b9401a76ba9d021db1bd91cb0e02b6.tar.xz
linux-fff34b3412b9401a76ba9d021db1bd91cb0e02b6.zip
Merge branch 'merge' into next
Brings in various bug fixes from 3.6-rcX
Diffstat (limited to 'arch/powerpc/kernel/traps.c')
-rw-r--r--arch/powerpc/kernel/traps.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c
index 8831322962d3..32518401af68 100644
--- a/arch/powerpc/kernel/traps.c
+++ b/arch/powerpc/kernel/traps.c
@@ -973,8 +973,9 @@ static int emulate_instruction(struct pt_regs *regs)
cpu_has_feature(CPU_FTR_DSCR)) {
PPC_WARN_EMULATED(mtdscr, regs);
rd = (instword >> 21) & 0x1f;
- mtspr(SPRN_DSCR, regs->gpr[rd]);
+ current->thread.dscr = regs->gpr[rd];
current->thread.dscr_inherit = 1;
+ mtspr(SPRN_DSCR, current->thread.dscr);
return 0;
}
#endif