[PATCH] ppc64: Turn runlatch on in exception entry

Enable the runlatch at the start of each exception.  Unfortunately we are out
of space in the 0x300 handler, so I added it a bit later.

The SPR write is fairly expensive, perhaps we should cache the runlatch state
in the paca and avoid the write when possible.

We don't need to turn the runlatch off, we do that in the idle loop.  Better
to take the hit in the idle loop than for each exception exit.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Anton Blanchard
2005-07-07 17:56:12 -07:00
committed by Linus Torvalds
parent a2f7a9ce2a
commit 8dc4fd87f2
2 changed files with 19 additions and 0 deletions

View File

@@ -524,6 +524,15 @@ static inline void ppc64_runlatch_off(void)
#endif /* __ASSEMBLY__ */
#ifdef __KERNEL__
#define RUNLATCH_ON(REG) \
BEGIN_FTR_SECTION \
mfspr (REG),SPRN_CTRLF; \
ori (REG),(REG),CTRL_RUNLATCH; \
mtspr SPRN_CTRLT,(REG); \
END_FTR_SECTION_IFSET(CPU_FTR_CTRL)
#endif
/*
* Number of entries in the SLB. If this ever changes we should handle
* it with a use a cpu feature fixup.