- vm_offset_t sa, ea;
- int rv;
-
- sa = trunc_page((vm_offset_t)ipc.ip_addr);
- ea = round_page((vm_offset_t)ipc.ip_addr+sizeof(int)-1);
- rv = vm_map_protect(p->p_map, sa, ea,
- VM_PROT_DEFAULT, FALSE);
- if (rv == KERN_SUCCESS) {
+ if (!chgprot((caddr_t)ipc.ip_addr, RW) &&
+ !chgprot((caddr_t)ipc.ip_addr+(sizeof(int)-1), RW))