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:
Konstantin Belousov 2014-05-28 00:45:35 +00:00
parent 7db42b3f97
commit 5930251a9d

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