in vunmapbuf(), call pmap_*remove() explicitly since uvm_km_free_wakeup()
will soon no longer do it for us.
This commit is contained in:
parent
2cdad949d0
commit
b356420a02
|
@ -1,4 +1,4 @@
|
||||||
/* $NetBSD: vm_machdep.c,v 1.73 2001/06/02 18:09:24 chs Exp $ */
|
/* $NetBSD: vm_machdep.c,v 1.74 2001/08/19 17:36:28 chs Exp $ */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 1994 Ludd, University of Lule}, Sweden.
|
* Copyright (c) 1994 Ludd, University of Lule}, Sweden.
|
||||||
|
@ -374,6 +374,8 @@ vunmapbuf(bp, len)
|
||||||
addr = trunc_page((vaddr_t)bp->b_data);
|
addr = trunc_page((vaddr_t)bp->b_data);
|
||||||
off = (vaddr_t)bp->b_data - addr;
|
off = (vaddr_t)bp->b_data - addr;
|
||||||
len = round_page(off + len);
|
len = round_page(off + len);
|
||||||
|
pmap_remove(vm_map_pmap(phys_map), addr, addr + len);
|
||||||
|
pmap_update();
|
||||||
uvm_km_free_wakeup(phys_map, addr, len);
|
uvm_km_free_wakeup(phys_map, addr, len);
|
||||||
bp->b_data = bp->b_saveaddr;
|
bp->b_data = bp->b_saveaddr;
|
||||||
bp->b_saveaddr = NULL;
|
bp->b_saveaddr = NULL;
|
||||||
|
|
Loading…
Reference in New Issue