Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/netbsd-2-0]: src/sys/arch/sparc64/sparc64 Pull up revision 1.157 (reques...
details: https://anonhg.NetBSD.org/src/rev/11e2d6bac60d
branches: netbsd-2-0
changeset: 564648:11e2d6bac60d
user: jdc <jdc%NetBSD.org@localhost>
date: Fri Jan 07 14:21:57 2005 +0000
description:
Pull up revision 1.157 (requested by martin in ticket #1013).
do the invalidation of the (virtually-addressed) L1 cache in pmap_remove_all()
(ie. just before we skip the per-page cache invalidations while tearing down
each context) instead of just before we recycle all the contexts in ctx_alloc().
the latter is not good enough since a (physically tagged) L1 cache line is
valid for all contexts, not just the one that was used to instantiate it.
fixes PRs 24126, 25669 and 27730.
diffstat:
sys/arch/sparc64/sparc64/pmap.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diffs (34 lines):
diff -r 78ef76cb7e4f -r 11e2d6bac60d sys/arch/sparc64/sparc64/pmap.c
--- a/sys/arch/sparc64/sparc64/pmap.c Fri Jan 07 12:51:20 2005 +0000
+++ b/sys/arch/sparc64/sparc64/pmap.c Fri Jan 07 14:21:57 2005 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.156 2004/03/21 14:19:30 pk Exp $ */
+/* $NetBSD: pmap.c,v 1.156.2.1 2005/01/07 14:21:57 jdc Exp $ */
/*
*
* Copyright (C) 1996-1999 Eduardo Horvath.
@@ -26,7 +26,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.156 2004/03/21 14:19:30 pk Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.156.2.1 2005/01/07 14:21:57 jdc Exp $");
#undef NO_VCACHE /* Don't forget the locked TLB in dostart */
#define HWREF
@@ -2077,6 +2077,7 @@
stxa(CTX_SECONDARY, ASI_DMMU, 0);
pm->pm_refs = 0;
ctx_free(pm);
+ blast_dcache();
}
/*
@@ -3136,7 +3137,6 @@
}
}
tlb_flush_all();
- blast_dcache();
ctx = 1;
pmap_next_ctx = 2;
}
Home |
Main Index |
Thread Index |
Old Index