summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitrij Tejblum <dt@FreeBSD.org>1999-01-07 22:15:51 +0000
committerDmitrij Tejblum <dt@FreeBSD.org>1999-01-07 22:15:51 +0000
commit6143bceb3f4a0d10907da5dfb73b2c30f37902c8 (patch)
tree9b79b89f0c5dd290ee06ea2066a80d084df24998
parent4c00dd8215d67c6acca11e4b7f8da73bc41031b0 (diff)
Notes
-rw-r--r--sys/amd64/amd64/pmap.c10
-rw-r--r--sys/i386/i386/pmap.c10
2 files changed, 10 insertions, 10 deletions
diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c
index 3f69ab0edde4..79cc809db316 100644
--- a/sys/amd64/amd64/pmap.c
+++ b/sys/amd64/amd64/pmap.c
@@ -39,7 +39,7 @@
* SUCH DAMAGE.
*
* from: @(#)pmap.c 7.7 (Berkeley) 5/12/91
- * $Id: pmap.c,v 1.214 1998/11/27 01:14:21 tegge Exp $
+ * $Id: pmap.c,v 1.215 1998/12/07 21:58:18 archie Exp $
*/
/*
@@ -3205,7 +3205,7 @@ pmap_phys_address(ppn)
int
pmap_ts_referenced(vm_offset_t pa)
{
- register pv_entry_t pv;
+ register pv_entry_t pv, pvf, pvn;
pv_table_t *ppv;
unsigned *pte;
int s;
@@ -3226,9 +3226,9 @@ pmap_ts_referenced(vm_offset_t pa)
/*
* Not found, check current mappings returning immediately if found.
*/
- for (pv = TAILQ_FIRST(&ppv->pv_list);
- pv;
- pv = TAILQ_NEXT(pv, pv_list)) {
+ pvf = TAILQ_FIRST(&ppv->pv_list);
+ for (pv = pvf; pv && pv != pvf; pv = pvn) {
+ pvn = TAILQ_NEXT(pv, pv_list);
TAILQ_REMOVE(&ppv->pv_list, pv, pv_list);
/*
diff --git a/sys/i386/i386/pmap.c b/sys/i386/i386/pmap.c
index 3f69ab0edde4..79cc809db316 100644
--- a/sys/i386/i386/pmap.c
+++ b/sys/i386/i386/pmap.c
@@ -39,7 +39,7 @@
* SUCH DAMAGE.
*
* from: @(#)pmap.c 7.7 (Berkeley) 5/12/91
- * $Id: pmap.c,v 1.214 1998/11/27 01:14:21 tegge Exp $
+ * $Id: pmap.c,v 1.215 1998/12/07 21:58:18 archie Exp $
*/
/*
@@ -3205,7 +3205,7 @@ pmap_phys_address(ppn)
int
pmap_ts_referenced(vm_offset_t pa)
{
- register pv_entry_t pv;
+ register pv_entry_t pv, pvf, pvn;
pv_table_t *ppv;
unsigned *pte;
int s;
@@ -3226,9 +3226,9 @@ pmap_ts_referenced(vm_offset_t pa)
/*
* Not found, check current mappings returning immediately if found.
*/
- for (pv = TAILQ_FIRST(&ppv->pv_list);
- pv;
- pv = TAILQ_NEXT(pv, pv_list)) {
+ pvf = TAILQ_FIRST(&ppv->pv_list);
+ for (pv = pvf; pv && pv != pvf; pv = pvn) {
+ pvn = TAILQ_NEXT(pv, pv_list);
TAILQ_REMOVE(&ppv->pv_list, pv, pv_list);
/*