Commit 11a27ad7 authored by Michael Neuling's avatar Michael Neuling Committed by Paul Mackerras
Browse files

[POWERPC] SLB shadow buffer cleanup



Cleanup some of the #define magic as suggested by Milton.

Signed-off-by: default avatarMichael Neuling <mikey@neuling.org>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 32bc6e09
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -42,6 +42,7 @@
#include <asm/lppaca.h>
#include <asm/cache.h>
#include <asm/compat.h>
#include <asm/mmu.h>
#endif

#define DEFINE(sym, val) \
@@ -137,6 +138,10 @@ int main(void)
	DEFINE(PACA_SYSTEM_TIME, offsetof(struct paca_struct, system_time));
	DEFINE(PACA_SLBSHADOWPTR, offsetof(struct paca_struct, slb_shadow_ptr));

	DEFINE(SLBSHADOW_STACKVSID,
	       offsetof(struct slb_shadow, save_area[SLB_NUM_BOLTED - 1].vsid));
	DEFINE(SLBSHADOW_STACKESID,
	       offsetof(struct slb_shadow, save_area[SLB_NUM_BOLTED - 1].esid));
	DEFINE(LPPACASRR0, offsetof(struct lppaca, saved_srr0));
	DEFINE(LPPACASRR1, offsetof(struct lppaca, saved_srr1));
	DEFINE(LPPACAANYINT, offsetof(struct lppaca, int_dword.any_int));
+4 −9
Original line number Diff line number Diff line
@@ -323,11 +323,6 @@ _GLOBAL(ret_from_fork)
 * The code which creates the new task context is in 'copy_thread'
 * in arch/powerpc/kernel/process.c 
 */
#define SHADOW_SLB_BOLTED_STACK_ESID \
		(SLBSHADOW_SAVEAREA + 0x10*(SLB_NUM_BOLTED-1))
#define SHADOW_SLB_BOLTED_STACK_VSID \
		(SLBSHADOW_SAVEAREA + 0x10*(SLB_NUM_BOLTED-1) + 8)

	.align	7
_GLOBAL(_switch)
	mflr	r0
@@ -384,9 +379,9 @@ BEGIN_FTR_SECTION
	/* Update the last bolted SLB */
	ld	r9,PACA_SLBSHADOWPTR(r13)
	li	r12,0
  	std	r12,SHADOW_SLB_BOLTED_STACK_ESID(r9) /* Clear ESID */
	std	r7,SHADOW_SLB_BOLTED_STACK_VSID(r9)  /* Save VSID */
 	std	r0,SHADOW_SLB_BOLTED_STACK_ESID(r9)  /* Save ESID */
	std	r12,SLBSHADOW_STACKESID(r9) /* Clear ESID */
	std	r7,SLBSHADOW_STACKVSID(r9)  /* Save VSID */
	std	r0,SLBSHADOW_STACKESID(r9)  /* Save ESID */

	slbie	r6
	slbie	r6		/* Workaround POWER5 < DD2.1 issue */