Date: Tue, 16 Mar 2010 16:11:16 +0000 (UTC) From: Nathan Whitehorn <nwhitehorn@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r205215 - in projects/ppc64/sys/powerpc: aim powerpc Message-ID: <201003161611.o2GGBGfY030801@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: nwhitehorn Date: Tue Mar 16 16:11:16 2010 New Revision: 205215 URL: http://svn.freebsd.org/changeset/base/205215 Log: Correct a final nit with USER_SR handling: USER_ADDR is no longer at USER_SR << 28 on powerpc64, so make sure to invalidate the correct SLB entry when switching threads. Modified: projects/ppc64/sys/powerpc/aim/locore32.S projects/ppc64/sys/powerpc/aim/locore64.S projects/ppc64/sys/powerpc/aim/swtch32.S projects/ppc64/sys/powerpc/aim/swtch64.S projects/ppc64/sys/powerpc/powerpc/genassym.c Modified: projects/ppc64/sys/powerpc/aim/locore32.S ============================================================================== --- projects/ppc64/sys/powerpc/aim/locore32.S Tue Mar 16 16:01:19 2010 (r205214) +++ projects/ppc64/sys/powerpc/aim/locore32.S Tue Mar 16 16:11:16 2010 (r205215) @@ -62,7 +62,6 @@ #include <machine/trap.h> #include <machine/param.h> -#include <machine/sr.h> #include <machine/spr.h> #include <machine/psl.h> #include <machine/asm.h> Modified: projects/ppc64/sys/powerpc/aim/locore64.S ============================================================================== --- projects/ppc64/sys/powerpc/aim/locore64.S Tue Mar 16 16:01:19 2010 (r205214) +++ projects/ppc64/sys/powerpc/aim/locore64.S Tue Mar 16 16:11:16 2010 (r205215) @@ -62,7 +62,6 @@ #include <machine/trap.h> #include <machine/param.h> -#include <machine/sr.h> #include <machine/spr.h> #include <machine/psl.h> #include <machine/asm.h> Modified: projects/ppc64/sys/powerpc/aim/swtch32.S ============================================================================== --- projects/ppc64/sys/powerpc/aim/swtch32.S Tue Mar 16 16:01:19 2010 (r205214) +++ projects/ppc64/sys/powerpc/aim/swtch32.S Tue Mar 16 16:11:16 2010 (r205215) @@ -63,7 +63,6 @@ #include <machine/trap.h> #include <machine/param.h> -#include <machine/sr.h> #include <machine/psl.h> #include <machine/asm.h> Modified: projects/ppc64/sys/powerpc/aim/swtch64.S ============================================================================== --- projects/ppc64/sys/powerpc/aim/swtch64.S Tue Mar 16 16:01:19 2010 (r205214) +++ projects/ppc64/sys/powerpc/aim/swtch64.S Tue Mar 16 16:11:16 2010 (r205215) @@ -63,7 +63,6 @@ #include <machine/trap.h> #include <machine/param.h> -#include <machine/sr.h> #include <machine/psl.h> #include <machine/asm.h> @@ -223,8 +222,10 @@ blocked_loop: ld %r1,PCB_SP(%r3) /* Load the stack pointer */ ld %r2,PCB_TOC(%r3) /* Load the TOC pointer */ - li %r5,USER_SR /* Load the USER_SR segment reg */ - sldi %r5,%r5,28 + lis %r5,USER_ADDR@highesta /* Load the USER_SR segment reg */ + ori %r5,%r5,USER_ADDR@highera + sldi %r5,%r5,32 + oris %r5,%r5,USER_ADDR@ha slbie %r5 ld %r5,PCB_AIM_USR_VSID(%r3) ld %r6,PCB_AIM_USR_ESID(%r3) Modified: projects/ppc64/sys/powerpc/powerpc/genassym.c ============================================================================== --- projects/ppc64/sys/powerpc/powerpc/genassym.c Tue Mar 16 16:01:19 2010 (r205214) +++ projects/ppc64/sys/powerpc/powerpc/genassym.c Tue Mar 16 16:11:16 2010 (r205215) @@ -102,6 +102,8 @@ ASSYM(TLBSAVE_BOOKE_R31, TLBSAVE_BOOKE_R ASSYM(MTX_LOCK, offsetof(struct mtx, mtx_lock)); #if defined(AIM) +ASSYM(USER_SR, USER_SR); +ASSYM(USER_ADDR, USER_ADDR); #ifdef __powerpc64__ ASSYM(PM_SLB, offsetof(struct pmap, pm_slb)); #else
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201003161611.o2GGBGfY030801>