summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Schwinge <thomas@schwinge.name>2011-09-06 00:27:46 +0200
committerThomas Schwinge <thomas@schwinge.name>2011-09-06 00:33:31 +0200
commit810152088a978ecbc1dda2a345bf236c32c941c7 (patch)
tree310c8e39111bead0f682f1b1f7e7ee227ea231dc
parentc91469dfa41f697f52471f5889d528fd3f8a4f4c (diff)
Further prototyping work for memory_object_proxy.c functions.
* vm/memory_object_proxy.h: Add #includes. (memory_object_proxy_lookup): New declaration. * vm/memory_object_proxy.c: #include <vm/memory_object_proxy.h>. * vm/vm_user.c: Likewise. (memory_object_proxy_lookup): Drop declaration. Parts based on a patch by FridolĂ­n PokornĂ˝ <fridolin.pokorny@gmail.com>.
-rw-r--r--vm/memory_object_proxy.c2
-rw-r--r--vm/memory_object_proxy.h36
-rw-r--r--vm/vm_user.c6
3 files changed, 31 insertions, 13 deletions
diff --git a/vm/memory_object_proxy.c b/vm/memory_object_proxy.c
index 72042567..fdab6e08 100644
--- a/vm/memory_object_proxy.c
+++ b/vm/memory_object_proxy.c
@@ -46,6 +46,8 @@
#include <ipc/ipc_port.h>
#include <ipc/ipc_space.h>
+#include <vm/memory_object_proxy.h>
+
/* The zone which holds our proxy memory objects. */
static zone_t memory_object_proxy_zone;
diff --git a/vm/memory_object_proxy.h b/vm/memory_object_proxy.h
index 001ddb22..f4be0d0d 100644
--- a/vm/memory_object_proxy.h
+++ b/vm/memory_object_proxy.h
@@ -1,5 +1,5 @@
-/* memory_object_proxy.c - Proxy memory objects for Mach.
- Copyright (C) 2005 Free Software Foundation, Inc.
+/* memory_object_proxy.h - Proxy memory objects for Mach.
+ Copyright (C) 2005, 2011 Free Software Foundation, Inc.
Written by Marcus Brinkmann.
This file is part of GNU Mach.
@@ -18,11 +18,31 @@
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. */
+#ifndef _VM_MEMORY_OBJECT_PROXY_H_
+#define _VM_MEMORY_OBJECT_PROXT_H_
+
+#include <ipc/ipc_types.h>
+#include <mach/boolean.h>
+#include <mach/machine/kern_return.h>
+#include <mach/machine/vm_types.h>
+#include <mach/message.h>
+#include <mach/vm_prot.h>
+
extern void memory_object_proxy_init (void);
extern boolean_t memory_object_proxy_notify (mach_msg_header_t *msg);
-extern kern_return_t memory_object_create_proxy (ipc_space_t space, vm_prot_t max_protection,
- ipc_port_t *object, natural_t object_count,
- vm_offset_t *offset, natural_t offset_count,
- vm_offset_t *start, natural_t start_count,
- vm_offset_t *len, natural_t len_count,
- ipc_port_t *port);
+extern kern_return_t memory_object_create_proxy (ipc_space_t space,
+ vm_prot_t max_protection,
+ ipc_port_t *object,
+ natural_t object_count,
+ vm_offset_t *offset,
+ natural_t offset_count,
+ vm_offset_t *start,
+ natural_t start_count,
+ vm_offset_t *len,
+ natural_t len_count,
+ ipc_port_t *port);
+extern kern_return_t memory_object_proxy_lookup (ipc_port_t port,
+ ipc_port_t *object,
+ vm_prot_t *max_protection);
+
+#endif /* _VM_MEMORY_OBJECT_PROXT_H_ */
diff --git a/vm/vm_user.c b/vm/vm_user.c
index 672daab8..59c2a36e 100644
--- a/vm/vm_user.c
+++ b/vm/vm_user.c
@@ -44,6 +44,7 @@
#include <vm/vm_kern.h>
#include <vm/vm_map.h>
#include <vm/vm_object.h>
+#include <vm/memory_object_proxy.h>
#include <vm/vm_page.h>
@@ -277,11 +278,6 @@ kern_return_t vm_copy(map, source_address, size, dest_address)
}
-/* XXX From memory_object_proxy.c */
-kern_return_t
-memory_object_proxy_lookup (ipc_port_t proxy_object, ipc_port_t *object,
- vm_prot_t *max_protection);
-
/*
* Routine: vm_map
*/