Remove the assert which can be triggered by the userspace. The

situation checked by assert is verified to not take place in
vm_map_wire(), and protection permissions on the wired entry can be
revoked afterward.

Reported by:	markj
Reviewed by:	alc
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
This commit is contained in:
kib 2014-05-28 00:45:35 +00:00
parent 310e93a4a7
commit b03014a79c

View File

@ -1986,11 +1986,8 @@ vm_map_protect(vm_map_t map, vm_offset_t start, vm_offset_t end,
*/
if ((current->eflags & MAP_ENTRY_USER_WIRED) != 0 &&
(current->protection & VM_PROT_WRITE) != 0 &&
(old_prot & VM_PROT_WRITE) == 0) {
KASSERT(old_prot != VM_PROT_NONE,
("vm_map_protect: inaccessible wired map entry"));
(old_prot & VM_PROT_WRITE) == 0)
vm_fault_copy_entry(map, map, current, current, NULL);
}
/*
* When restricting access, update the physical map. Worry