powerpc/476: Add isync after loading mmu and debug spr's
476 requires an isync after loading MMU and debug related SPR's. Some of these are in performance-critical paths and may need to be optimized, but initially, we're playing it safe. Signed-off-by: Torez Smith <lnxtorez@linux.vnet.ibm.com> Signed-off-by: Dave Kleikamp <shaggy@linux.vnet.ibm.com> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
This commit is contained in:
committed by
Josh Boyer
parent
fc5e709731
commit
221c185d4e
@@ -114,6 +114,9 @@ static void __kprobes prepare_singlestep(struct kprobe *p, struct pt_regs *regs)
|
|||||||
#ifdef CONFIG_PPC_ADV_DEBUG_REGS
|
#ifdef CONFIG_PPC_ADV_DEBUG_REGS
|
||||||
regs->msr &= ~MSR_CE;
|
regs->msr &= ~MSR_CE;
|
||||||
mtspr(SPRN_DBCR0, mfspr(SPRN_DBCR0) | DBCR0_IC | DBCR0_IDM);
|
mtspr(SPRN_DBCR0, mfspr(SPRN_DBCR0) | DBCR0_IC | DBCR0_IDM);
|
||||||
|
#ifdef CONFIG_PPC_47x
|
||||||
|
isync();
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@@ -371,6 +371,9 @@ int set_dabr(unsigned long dabr)
|
|||||||
/* XXX should we have a CPU_FTR_HAS_DABR ? */
|
/* XXX should we have a CPU_FTR_HAS_DABR ? */
|
||||||
#ifdef CONFIG_PPC_ADV_DEBUG_REGS
|
#ifdef CONFIG_PPC_ADV_DEBUG_REGS
|
||||||
mtspr(SPRN_DAC1, dabr);
|
mtspr(SPRN_DAC1, dabr);
|
||||||
|
#ifdef CONFIG_PPC_47x
|
||||||
|
isync();
|
||||||
|
#endif
|
||||||
#elif defined(CONFIG_PPC_BOOK3S)
|
#elif defined(CONFIG_PPC_BOOK3S)
|
||||||
mtspr(SPRN_DABR, dabr);
|
mtspr(SPRN_DABR, dabr);
|
||||||
#endif
|
#endif
|
||||||
|
Reference in New Issue
Block a user