aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libpager/pager-ro-port.c6
-rw-r--r--tmpfs/node.c3
2 files changed, 4 insertions, 5 deletions
diff --git a/libpager/pager-ro-port.c b/libpager/pager-ro-port.c
index 7772ba30..5a79a33a 100644
--- a/libpager/pager-ro-port.c
+++ b/libpager/pager-ro-port.c
@@ -29,7 +29,7 @@ pager_create_ro_port (struct pager *p)
vm_offset_t start = 0;
vm_size_t len = ~0;
- rw_port = ports_get_send_right (p);
+ rw_port = ports_get_right (p);
if (!MACH_PORT_VALID (rw_port))
{
err = errno;
@@ -38,12 +38,10 @@ pager_create_ro_port (struct pager *p)
err = memory_object_create_proxy (mach_task_self (),
VM_PROT_READ | VM_PROT_EXECUTE,
- &rw_port, 1,
+ &rw_port, MACH_MSG_TYPE_MAKE_SEND, 1,
&offset, 1, &start, 1, &len, 1,
&port);
- mach_port_deallocate (mach_task_self (), rw_port);
-
out:
errno = err;
return port;
diff --git a/tmpfs/node.c b/tmpfs/node.c
index ed04a8df..86e02fea 100644
--- a/tmpfs/node.c
+++ b/tmpfs/node.c
@@ -572,7 +572,8 @@ diskfs_get_filemap (struct node *np, vm_prot_t prot)
vm_size_t len = ~0;
err = memory_object_create_proxy (mach_task_self (),
VM_PROT_READ | VM_PROT_EXECUTE,
- &np->dn->u.reg.memobj, 1,
+ &np->dn->u.reg.memobj,
+ MACH_MSG_TYPE_COPY_SEND, 1,
&offset, 1, &start, 1, &len, 1,
&right);
if (err)