From d4f662585f29ddfad5c1b8e2b6ceb308fb8ae058 Mon Sep 17 00:00:00 2001 From: green Date: Mon, 16 Aug 2004 03:11:09 +0000 Subject: Rather than bringing back all of the changes to make VM map deletion wait for system wires to disappear, do so (much more trivially) by instead only checking for system wires of user maps and not kernel maps. Alternative by: tor Reviewed by: alc --- sys/vm/vm_map.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'sys/vm/vm_map.c') diff --git a/sys/vm/vm_map.c b/sys/vm/vm_map.c index b96d8ce..765126c 100644 --- a/sys/vm/vm_map.c +++ b/sys/vm/vm_map.c @@ -2236,8 +2236,12 @@ vm_map_delete(vm_map_t map, vm_offset_t start, vm_offset_t end) /* * Wait for wiring or unwiring of an entry to complete. + * Also wait for any system wirings to disappear on + * user maps. */ - if ((entry->eflags & MAP_ENTRY_IN_TRANSITION) != 0) { + if ((entry->eflags & MAP_ENTRY_IN_TRANSITION) != 0 || + (vm_map_pmap(map) != kernel_pmap && + vm_map_entry_system_wired_count(entry) != 0)) { unsigned int last_timestamp; vm_offset_t saved_start; vm_map_entry_t tmp_entry; -- cgit v1.1