diff options
author | Artur Grabowski <art@cvs.openbsd.org> | 2007-06-07 15:31:10 +0000 |
---|---|---|
committer | Artur Grabowski <art@cvs.openbsd.org> | 2007-06-07 15:31:10 +0000 |
commit | 9a20ce403eaf69d822736c0eecae87b477fb5ecb (patch) | |
tree | 38763960884116dddd4379f7f9b619e5f0d5ccdb /sys/arch/i386 | |
parent | 72468a204c205b9c39e52407efc5c47973e5ee85 (diff) |
roller-coaster. The bug that corrupts the page tables is back.
So put back the flushg in pmap_release since at least it hides it
and I can now reproduce.
Diffstat (limited to 'sys/arch/i386')
-rw-r--r-- | sys/arch/i386/i386/pmap.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/arch/i386/i386/pmap.c b/sys/arch/i386/i386/pmap.c index 46955fb4776..b3f72727a33 100644 --- a/sys/arch/i386/i386/pmap.c +++ b/sys/arch/i386/i386/pmap.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pmap.c,v 1.116 2007/05/31 22:30:25 art Exp $ */ +/* $OpenBSD: pmap.c,v 1.117 2007/06/07 15:31:09 art Exp $ */ /* $NetBSD: pmap.c,v 1.91 2000/06/02 17:46:37 thorpej Exp $ */ /* @@ -1532,6 +1532,11 @@ pmap_release(struct pmap *pmap) simple_unlock(&pmaps_lock); /* + * Before we free the pmap just make sure it's not cached anywhere. + */ + tlbflushg(); + + /* * free any remaining PTPs */ |