Properly set the PG_MAPPED and PG_WRITEABLE flags. This fixes some potential
problems with vm_map_remove/vm_map_delete.
This commit is contained in:
parent
144e75837e
commit
a6e6bcc5f4
@ -66,7 +66,7 @@
|
||||
* any improvements or extensions that they make and grant Carnegie the
|
||||
* rights to redistribute these changes.
|
||||
*
|
||||
* $Id: vm_fault.c,v 1.51 1996/06/14 23:26:40 davidg Exp $
|
||||
* $Id: vm_fault.c,v 1.52 1996/06/16 20:37:26 dyson Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -972,10 +972,10 @@ vm_fault_copy_entry(dst_map, src_map, dst_entry, src_entry)
|
||||
* Enter it in the pmap...
|
||||
*/
|
||||
|
||||
dst_m->flags |= PG_WRITEABLE|PG_MAPPED;
|
||||
dst_m->flags &= ~PG_ZERO;
|
||||
pmap_enter(dst_map->pmap, vaddr, VM_PAGE_TO_PHYS(dst_m),
|
||||
prot, FALSE);
|
||||
dst_m->flags |= PG_WRITEABLE|PG_MAPPED;
|
||||
|
||||
/*
|
||||
* Mark it no longer busy, and put it on the active list.
|
||||
|
@ -59,7 +59,7 @@
|
||||
* any improvements or extensions that they make and grant Carnegie the
|
||||
* rights to redistribute these changes.
|
||||
*
|
||||
* $Id: vm_glue.c,v 1.50 1996/05/31 00:37:57 dyson Exp $
|
||||
* $Id: vm_glue.c,v 1.51 1996/06/30 21:16:18 dyson Exp $
|
||||
*/
|
||||
|
||||
#include "opt_ddb.h"
|
||||
@ -253,7 +253,7 @@ vm_fork(p1, p2)
|
||||
pmap_kenter(((vm_offset_t) up) + i * PAGE_SIZE,
|
||||
VM_PAGE_TO_PHYS(m));
|
||||
m->flags &= ~PG_ZERO;
|
||||
m->flags |= PG_MAPPED;
|
||||
m->flags |= PG_MAPPED|PG_WRITEABLE;
|
||||
m->valid = VM_PAGE_BITS_ALL;
|
||||
}
|
||||
|
||||
@ -364,7 +364,7 @@ retry:
|
||||
m->valid = VM_PAGE_BITS_ALL;
|
||||
}
|
||||
PAGE_WAKEUP(m);
|
||||
m->flags |= PG_MAPPED;
|
||||
m->flags |= PG_MAPPED|PG_WRITEABLE;
|
||||
}
|
||||
|
||||
s = splhigh();
|
||||
|
@ -61,7 +61,7 @@
|
||||
* any improvements or extensions that they make and grant Carnegie the
|
||||
* rights to redistribute these changes.
|
||||
*
|
||||
* $Id: vm_kern.c,v 1.25 1996/05/18 03:37:39 dyson Exp $
|
||||
* $Id: vm_kern.c,v 1.26 1996/05/23 02:24:55 dyson Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -381,6 +381,7 @@ retry:
|
||||
PAGE_WAKEUP(m);
|
||||
pmap_enter(kernel_pmap, addr + i, VM_PAGE_TO_PHYS(m),
|
||||
VM_PROT_ALL, 1);
|
||||
m->flags |= PG_MAPPED|PG_WRITEABLE;
|
||||
}
|
||||
vm_map_unlock(map);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user