Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/arm32/arm32 Fix bug in previous change which result...



details:   https://anonhg.NetBSD.org/src/rev/425456d17975
branches:  trunk
changeset: 467761:425456d17975
user:      sommerfe <sommerfe%NetBSD.org@localhost>
date:      Sun Mar 28 20:21:51 1999 +0000

description:
Fix bug in previous change which resulted in kernel VA space leak.
We need an accurate len after we clear the PTE's in vunmapbuf.

diffstat:

 sys/arch/arm32/arm32/vm_machdep.c |  8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diffs (31 lines):

diff -r 279ebb8693b5 -r 425456d17975 sys/arch/arm32/arm32/vm_machdep.c
--- a/sys/arch/arm32/arm32/vm_machdep.c Sun Mar 28 20:09:09 1999 +0000
+++ b/sys/arch/arm32/arm32/vm_machdep.c Sun Mar 28 20:21:51 1999 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: vm_machdep.c,v 1.37 1999/03/28 06:35:38 mycroft Exp $  */
+/*     $NetBSD: vm_machdep.c,v 1.38 1999/03/28 20:21:51 sommerfe Exp $ */
 
 /*
  * Copyright (c) 1994-1998 Mark Brinicombe.
@@ -386,6 +386,7 @@
 {
        vm_offset_t addr, off;
        pt_entry_t *pte;
+       int tlen;
 
 #ifdef PMAP_DEBUG
        if (pmap_debug_level >= 0)
@@ -413,10 +414,11 @@
        else
                cpu_cache_purgeID();
 
+       tlen = len;
        do {
                *pte++ = 0;
-               len -= PAGE_SIZE;
-       } while (len > 0);
+               tlen -= PAGE_SIZE;
+       } while (tlen > 0);
 
        if (len <= 0x1000)
                cpu_tlb_flushID_SE(addr);



Home | Main Index | Thread Index | Old Index