Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/sparc64/sparc64 Fix locking problem.
details: https://anonhg.NetBSD.org/src/rev/928186359ba7
branches: trunk
changeset: 514978:928186359ba7
user: eeh <eeh%NetBSD.org@localhost>
date: Sat Sep 15 07:12:22 2001 +0000
description:
Fix locking problem.
diffstat:
sys/arch/sparc64/sparc64/pmap.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diffs (25 lines):
diff -r 08a0933c411e -r 928186359ba7 sys/arch/sparc64/sparc64/pmap.c
--- a/sys/arch/sparc64/sparc64/pmap.c Sat Sep 15 07:10:04 2001 +0000
+++ b/sys/arch/sparc64/sparc64/pmap.c Sat Sep 15 07:12:22 2001 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.108 2001/09/10 21:19:26 chris Exp $ */
+/* $NetBSD: pmap.c,v 1.109 2001/09/15 07:12:22 eeh Exp $ */
#undef NO_VCACHE /* Don't forget the locked TLB in dostart */
#define HWREF
/*
@@ -3244,7 +3244,6 @@
firstpv = pv = pa_to_pvh(pa);
s = splvm();
- if (firstpv->pv_pmap) simple_lock(&firstpv->pv_pmap->pm_lock);
/* First remove the entire list of continuation pv's*/
for (npv = pv->pv_next; npv; npv = pv->pv_next) {
@@ -3313,6 +3312,7 @@
}
#endif
if (pv->pv_pmap != NULL) {
+ simple_lock(&pv->pv_pmap->pm_lock);
#ifdef DEBUG
if (pmapdebug & (PDB_CHANGEPROT|PDB_REF|PDB_REMOVE)) {
printf("pmap_page_protect: demap va %p of pa %lx from pm %p...\n",
Home |
Main Index |
Thread Index |
Old Index