From d9ce618d9b6cb74383259e354c514b69802bd22a Mon Sep 17 00:00:00 2001 From: alc Date: Sat, 3 Apr 2010 16:20:22 +0000 Subject: Re-enable the call to pmap_release() by vmspace_dofree(). The accounting problem that is described in the comment has been addressed. Submitted by: kib Tested by: pho (a few months ago) MFC after: 6 weeks --- sys/vm/vm_map.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'sys/vm') diff --git a/sys/vm/vm_map.c b/sys/vm/vm_map.c index 3b17a30..1235ec0 100644 --- a/sys/vm/vm_map.c +++ b/sys/vm/vm_map.c @@ -313,6 +313,7 @@ vm_init2(void) static inline void vmspace_dofree(struct vmspace *vm) { + CTR1(KTR_VM, "vmspace_free: %p", vm); /* @@ -329,12 +330,8 @@ vmspace_dofree(struct vmspace *vm) (void)vm_map_remove(&vm->vm_map, vm->vm_map.min_offset, vm->vm_map.max_offset); - /* - * XXX Comment out the pmap_release call for now. The - * vmspace_zone is marked as UMA_ZONE_NOFREE, and bugs cause - * pmap.resident_count to be != 0 on exit sometimes. - */ -/* pmap_release(vmspace_pmap(vm)); */ + pmap_release(vmspace_pmap(vm)); + vm->vm_map.pmap = NULL; uma_zfree(vmspace_zone, vm); } -- cgit v1.1