summaryrefslogtreecommitdiff
path: root/vm
diff options
context:
space:
mode:
authorFlavio Cruz <flaviocruz@gmail.com>2022-12-20 20:01:02 -0500
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2022-12-21 12:55:46 +0100
commit448889a4f0c32ba8ea61f870d4edcb0e0d58af85 (patch)
treecad56c7263667bb09096cc05c707130d3809544a /vm
parent28ac48ba2371ad6f76f263e56dcf0090fe0d6087 (diff)
Use -Wstrict-prototypes and fix warnings
Most of the changes include defining and using proper function type declarations (with argument types declared) and avoiding using the K&R style of function declarations. Message-Id: <Y6Jazsuis1QA0lXI@mars>
Diffstat (limited to 'vm')
-rw-r--r--vm/memory_object.c6
-rw-r--r--vm/vm_debug.c6
-rw-r--r--vm/vm_fault.c18
-rw-r--r--vm/vm_fault.h7
-rw-r--r--vm/vm_kern.c2
-rw-r--r--vm/vm_map.c14
-rw-r--r--vm/vm_map.h14
-rw-r--r--vm/vm_user.c11
8 files changed, 40 insertions, 38 deletions
diff --git a/vm/memory_object.c b/vm/memory_object.c
index ad93f87c..464a036e 100644
--- a/vm/memory_object.c
+++ b/vm/memory_object.c
@@ -976,9 +976,9 @@ kern_return_t memory_object_get_attributes(
/*
* If successful, consumes the supplied naked send right.
*/
-kern_return_t vm_set_default_memory_manager(host, default_manager)
- const host_t host;
- ipc_port_t *default_manager;
+kern_return_t vm_set_default_memory_manager(
+ const host_t host,
+ ipc_port_t *default_manager)
{
ipc_port_t current_manager;
ipc_port_t new_manager;
diff --git a/vm/vm_debug.c b/vm/vm_debug.c
index 4b5c1521..3339d0c8 100644
--- a/vm/vm_debug.c
+++ b/vm/vm_debug.c
@@ -433,10 +433,8 @@ mach_vm_object_pages(
*/
kern_return_t
-host_virtual_physical_table_info(host, infop, countp)
- const host_t host;
- hash_info_bucket_array_t *infop;
- natural_t *countp;
+host_virtual_physical_table_info(const host_t host,
+ hash_info_bucket_array_t *infop, natural_t *countp)
{
vm_offset_t addr;
vm_size_t size = 0;/* '=0' to quiet gcc warnings */
diff --git a/vm/vm_fault.c b/vm/vm_fault.c
index e1dfb06e..44801911 100644
--- a/vm/vm_fault.c
+++ b/vm/vm_fault.c
@@ -70,7 +70,7 @@ typedef struct vm_fault_state {
vm_offset_t vmf_vaddr;
vm_prot_t vmf_fault_type;
boolean_t vmf_change_wiring;
- void (*vmf_continuation)();
+ vm_fault_continuation_t vmf_continuation;
vm_map_version_t vmf_version;
boolean_t vmf_wired;
struct vm_object *vmf_object;
@@ -218,7 +218,7 @@ vm_fault_return_t vm_fault_page(
*/
/* More arguments: */
boolean_t resume, /* We are restarting. */
- void (*continuation)()) /* Continuation for blocking. */
+ continuation_t continuation) /* Continuation for blocking. */
{
vm_page_t m;
vm_object_t object;
@@ -347,7 +347,7 @@ vm_fault_return_t vm_fault_page(
PAGE_ASSERT_WAIT(m, interruptible);
vm_object_unlock(object);
- if (continuation != (void (*)()) 0) {
+ if (continuation != thread_no_continuation) {
vm_fault_state_t *state =
(vm_fault_state_t *) current_thread()->ith_other;
@@ -1082,7 +1082,7 @@ vm_fault_return_t vm_fault_page(
block_and_backoff:
vm_fault_cleanup(object, first_m);
- if (continuation != (void (*)()) 0) {
+ if (continuation != thread_no_continuation) {
vm_fault_state_t *state =
(vm_fault_state_t *) current_thread()->ith_other;
@@ -1149,7 +1149,7 @@ kern_return_t vm_fault(
vm_prot_t fault_type,
boolean_t change_wiring,
boolean_t resume,
- void (*continuation)())
+ vm_fault_continuation_t continuation)
{
vm_map_version_t version; /* Map version for verificiation */
boolean_t wired; /* Should mapping be wired down? */
@@ -1187,7 +1187,7 @@ kern_return_t vm_fault(
goto after_vm_fault_page;
}
- if (continuation != (void (*)()) 0) {
+ if (continuation != vm_fault_no_continuation) {
/*
* We will probably need to save state.
*/
@@ -1239,7 +1239,7 @@ kern_return_t vm_fault(
object->ref_count++;
vm_object_paging_begin(object);
- if (continuation != (void (*)()) 0) {
+ if (continuation != vm_fault_no_continuation) {
vm_fault_state_t *state =
(vm_fault_state_t *) current_thread()->ith_other;
@@ -1293,7 +1293,7 @@ kern_return_t vm_fault(
kr = KERN_SUCCESS;
goto done;
case VM_FAULT_MEMORY_SHORTAGE:
- if (continuation != (void (*)()) 0) {
+ if (continuation != vm_fault_no_continuation) {
vm_fault_state_t *state =
(vm_fault_state_t *) current_thread()->ith_other;
@@ -1476,7 +1476,7 @@ kern_return_t vm_fault(
#undef RELEASE_PAGE
done:
- if (continuation != (void (*)()) 0) {
+ if (continuation != vm_fault_no_continuation) {
vm_fault_state_t *state =
(vm_fault_state_t *) current_thread()->ith_other;
diff --git a/vm/vm_fault.h b/vm/vm_fault.h
index 7fdbc417..ae692b11 100644
--- a/vm/vm_fault.h
+++ b/vm/vm_fault.h
@@ -49,11 +49,14 @@ typedef kern_return_t vm_fault_return_t;
#define VM_FAULT_FICTITIOUS_SHORTAGE 4
#define VM_FAULT_MEMORY_ERROR 5
+typedef void (*vm_fault_continuation_t)(kern_return_t);
+#define vm_fault_no_continuation ((vm_fault_continuation_t)0)
+
extern void vm_fault_init(void);
extern vm_fault_return_t vm_fault_page(vm_object_t, vm_offset_t, vm_prot_t,
boolean_t, boolean_t, vm_prot_t *,
vm_page_t *, vm_page_t *, boolean_t,
- void (*)());
+ continuation_t);
extern void vm_fault_cleanup(vm_object_t, vm_page_t);
/*
@@ -61,7 +64,7 @@ extern void vm_fault_cleanup(vm_object_t, vm_page_t);
*/
extern kern_return_t vm_fault(vm_map_t, vm_offset_t, vm_prot_t, boolean_t,
- boolean_t, void (*)());
+ boolean_t, vm_fault_continuation_t);
extern void vm_fault_wire(vm_map_t, vm_map_entry_t);
extern void vm_fault_unwire(vm_map_t, vm_map_entry_t);
diff --git a/vm/vm_kern.c b/vm/vm_kern.c
index c624a875..51223d98 100644
--- a/vm/vm_kern.c
+++ b/vm/vm_kern.c
@@ -1014,7 +1014,7 @@ kmem_io_map_copyout(
return(ret);
}
copy->cpy_cont = vm_map_copy_discard_cont;
- copy->cpy_cont_args = (char *) new_copy;
+ copy->cpy_cont_args = (vm_map_copyin_args_t)new_copy;
copy = new_copy;
page_list = &copy->cpy_page_list[0];
}
diff --git a/vm/vm_map.c b/vm/vm_map.c
index 4200a239..963aa507 100644
--- a/vm/vm_map.c
+++ b/vm/vm_map.c
@@ -280,8 +280,7 @@ void vm_map_unlock(struct vm_map *map)
#define vm_map_copy_entry_create(copy) \
_vm_map_entry_create(&(copy)->cpy_hdr)
-vm_map_entry_t _vm_map_entry_create(map_header)
- const struct vm_map_header *map_header;
+vm_map_entry_t _vm_map_entry_create(const struct vm_map_header *map_header)
{
vm_map_entry_t entry;
@@ -303,9 +302,8 @@ vm_map_entry_t _vm_map_entry_create(map_header)
#define vm_map_copy_entry_dispose(map, entry) \
_vm_map_entry_dispose(&(copy)->cpy_hdr, (entry))
-void _vm_map_entry_dispose(map_header, entry)
- const struct vm_map_header *map_header;
- vm_map_entry_t entry;
+void _vm_map_entry_dispose(const struct vm_map_header *map_header,
+ vm_map_entry_t entry)
{
(void)map_header;
@@ -3810,7 +3808,7 @@ kern_return_t vm_map_copyin_page_list(
copy->offset = src_addr;
copy->size = len;
copy->cpy_cont = ((kern_return_t (*)()) 0);
- copy->cpy_cont_args = (char *) VM_MAP_COPYIN_ARGS_NULL;
+ copy->cpy_cont_args = VM_MAP_COPYIN_ARGS_NULL;
/*
* Find the beginning of the region.
@@ -3900,7 +3898,7 @@ make_continuation:
}
cont_args->steal_pages = steal_pages;
- copy->cpy_cont_args = (char *) cont_args;
+ copy->cpy_cont_args = cont_args;
copy->cpy_cont = vm_map_copyin_page_list_cont;
src_end = src_start;
@@ -4239,7 +4237,7 @@ retry:
cont_args->destroy_len = src_end - src_start;
cont_args->steal_pages = FALSE;
- copy->cpy_cont_args = (char *) cont_args;
+ copy->cpy_cont_args = cont_args;
copy->cpy_cont = vm_map_copyin_page_list_cont;
}
diff --git a/vm/vm_map.h b/vm/vm_map.h
index 57bdf651..3d1c9428 100644
--- a/vm/vm_map.h
+++ b/vm/vm_map.h
@@ -255,6 +255,10 @@ typedef struct vm_map_version {
#define VM_MAP_COPY_PAGE_LIST_MAX 64
+struct vm_map_copy;
+struct vm_map_copyin_args_data;
+typedef kern_return_t (*vm_map_copy_cont_fn)(struct vm_map_copyin_args_data*, struct vm_map_copy**);
+
typedef struct vm_map_copy {
int type;
#define VM_MAP_COPY_ENTRY_LIST 1
@@ -270,8 +274,8 @@ typedef struct vm_map_copy {
struct { /* PAGE_LIST */
vm_page_t page_list[VM_MAP_COPY_PAGE_LIST_MAX];
int npages;
- kern_return_t (*cont)();
- char *cont_args;
+ vm_map_copy_cont_fn cont;
+ struct vm_map_copyin_args_data* cont_args;
} c_p;
} c_u;
} *vm_map_copy_t;
@@ -323,7 +327,7 @@ MACRO_BEGIN \
(*((old_copy)->cpy_cont))((old_copy)->cpy_cont_args, \
(vm_map_copy_t *) 0); \
(old_copy)->cpy_cont = (kern_return_t (*)()) 0; \
- (old_copy)->cpy_cont_args = (char *) 0; \
+ (old_copy)->cpy_cont_args = VM_MAP_COPYIN_ARGS_NULL; \
MACRO_END
#define vm_map_copy_has_cont(copy) \
@@ -333,14 +337,14 @@ MACRO_END
* Continuation structures for vm_map_copyin_page_list.
*/
-typedef struct {
+typedef struct vm_map_copyin_args_data {
vm_map_t map;
vm_offset_t src_addr;
vm_size_t src_len;
vm_offset_t destroy_addr;
vm_size_t destroy_len;
boolean_t steal_pages;
-} vm_map_copyin_args_data_t, *vm_map_copyin_args_t;
+} vm_map_copyin_args_data_t, *vm_map_copyin_args_t;
#define VM_MAP_COPYIN_ARGS_NULL ((vm_map_copyin_args_t) 0)
diff --git a/vm/vm_user.c b/vm/vm_user.c
index 9e789eba..b3887ad1 100644
--- a/vm/vm_user.c
+++ b/vm/vm_user.c
@@ -430,12 +430,11 @@ kern_return_t vm_map(
*
* [ To unwire the pages, specify VM_PROT_NONE. ]
*/
-kern_return_t vm_wire(port, map, start, size, access)
- const ipc_port_t port;
- vm_map_t map;
- vm_offset_t start;
- vm_size_t size;
- vm_prot_t access;
+kern_return_t vm_wire(const ipc_port_t port,
+ vm_map_t map,
+ vm_offset_t start,
+ vm_size_t size,
+ vm_prot_t access)
{
boolean_t priv;