From 6f2e7884b67738b227642fd6afda105bdbc49a5d Mon Sep 17 00:00:00 2001 From: dt Date: Tue, 8 Jun 1999 16:42:19 +0000 Subject: Keep fpcurproc locked in memory, so that we always can save the FP state correctly. This should fix the "pmap_changebit didn't" panic that some people see. Reviewed by: dfr --- sys/powerpc/aim/vm_machdep.c | 6 ++++-- sys/powerpc/powerpc/vm_machdep.c | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) (limited to 'sys/powerpc') diff --git a/sys/powerpc/aim/vm_machdep.c b/sys/powerpc/aim/vm_machdep.c index 929d9fb..f5f3cdf 100644 --- a/sys/powerpc/aim/vm_machdep.c +++ b/sys/powerpc/aim/vm_machdep.c @@ -38,7 +38,7 @@ * * from: @(#)vm_machdep.c 7.3 (Berkeley) 5/13/91 * Utah $Hdr: vm_machdep.c 1.16.1.1 89/06/23$ - * $Id: vm_machdep.c,v 1.13 1999/04/20 22:53:54 dt Exp $ + * $Id: vm_machdep.c,v 1.14 1999/04/23 19:53:38 dt Exp $ */ /* * Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University. @@ -240,8 +240,10 @@ void cpu_exit(p) register struct proc *p; { - if (p == fpcurproc) + if (p == fpcurproc) { + PRELE(fpcurproc); fpcurproc = NULL; + } (void) splhigh(); cnt.v_swtch++; diff --git a/sys/powerpc/powerpc/vm_machdep.c b/sys/powerpc/powerpc/vm_machdep.c index 929d9fb..f5f3cdf 100644 --- a/sys/powerpc/powerpc/vm_machdep.c +++ b/sys/powerpc/powerpc/vm_machdep.c @@ -38,7 +38,7 @@ * * from: @(#)vm_machdep.c 7.3 (Berkeley) 5/13/91 * Utah $Hdr: vm_machdep.c 1.16.1.1 89/06/23$ - * $Id: vm_machdep.c,v 1.13 1999/04/20 22:53:54 dt Exp $ + * $Id: vm_machdep.c,v 1.14 1999/04/23 19:53:38 dt Exp $ */ /* * Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University. @@ -240,8 +240,10 @@ void cpu_exit(p) register struct proc *p; { - if (p == fpcurproc) + if (p == fpcurproc) { + PRELE(fpcurproc); fpcurproc = NULL; + } (void) splhigh(); cnt.v_swtch++; -- cgit v1.1