@@ -22,8 +22,8 @@
#include "private.h"
void *osdep_xenforeignmemory_map(xenforeignmemory_handle *fmem,
- uint32_t dom, int prot,
- const xen_pfn_t *arr, int *err, size_t num)
+ uint32_t dom, int prot, size_t num,
+ const xen_pfn_t arr[/*num*/], int err[/*num*/])
{
xen_pfn_t *pfn;
unsigned int i;
@@ -64,7 +64,8 @@ int xenforeignmemory_close(xenforeignmemory_handle *fmem)
void *xenforeignmemory_map(xenforeignmemory_handle *fmem,
uint32_t dom, int prot,
- const xen_pfn_t *arr, int *err, size_t num)
+ size_t num,
+ const xen_pfn_t arr[/*num*/], int err[/*num*/])
{
void *ret;
int *err_to_free = NULL;
@@ -75,7 +76,7 @@ void *xenforeignmemory_map(xenforeignmemory_handle *fmem,
if ( err == NULL )
return NULL;
- ret = osdep_xenforeignmemory_map(fmem, dom, prot, arr, err, num);
+ ret = osdep_xenforeignmemory_map(fmem, dom, prot, num, arr, err);
if ( ret == 0 && err_to_free )
{
@@ -84,8 +84,8 @@ int osdep_xenforeignmemory_close(xenforeignmemory_handle *fmem)
void *osdep_xenforeignmemory_map(xenforeignmemory_handle *fmem,
uint32_t dom, int prot,
- const xen_pfn_t *arr, int *err,
- size_t num)
+ size_t num,
+ const xen_pfn_t arr[/*num*/], int err[/*num*/])
{
int fd = fmem->fd;
privcmd_mmapbatch_t ioctlx;
@@ -104,8 +104,8 @@ int xenforeignmemory_close(xenforeignmemory_handle *fmem);
* of @err indicating failure to map every page.
*/
void *xenforeignmemory_map(xenforeignmemory_handle *fmem, uint32_t dom,
- int prot, const xen_pfn_t *arr, int *err,
- size_t pages);
+ int prot, size_t pages,
+ const xen_pfn_t arr[/*pages*/], int err[/*pages*/]);
/*
* Unmap a mapping previous created with xenforeignmemory_map().
@@ -161,7 +161,8 @@ out:
void *osdep_xenforeignmemory_map(xenforeignmemory_handle *fmem,
uint32_t dom, int prot,
- const xen_pfn_t *arr, int *err, size_t num)
+ size_t num,
+ const xen_pfn_t arr[/*num*/], int err[/*num*/])
{
int fd = fmem->fd;
privcmd_mmapbatch_v2_t ioctlx;
@@ -41,7 +41,8 @@ int osdep_xenforeignmemory_close(xenforeignmemory_handle *fmem)
void *osdep_xenforeignmemory_map(xenforeignmemory_handle *fmem,
uint32_t dom, int prot,
- const xen_pfn_t *arr, int *err, size_t num)
+ size_t num,
+ const xen_pfn_t arr[/*num*/], int err[/*num*/])
{
unsigned long pt_prot = 0;
if (prot & PROT_READ)
@@ -27,7 +27,8 @@ int osdep_xenforeignmemory_close(xenforeignmemory_handle *fmem);
void *osdep_xenforeignmemory_map(xenforeignmemory_handle *fmem,
uint32_t dom, int prot,
- const xen_pfn_t *arr, int *err, size_t num);
+ size_t num,
+ const xen_pfn_t arr[num], int err[num]);
int osdep_xenforeignmemory_unmap(xenforeignmemory_handle *fmem,
void *addr, size_t num);
@@ -28,7 +28,7 @@ void *xc_map_foreign_pages(xc_interface *xch, uint32_t dom, int prot,
return NULL;
}
- return xenforeignmemory_map(xch->fmem, dom, prot, arr, NULL, num);
+ return xenforeignmemory_map(xch->fmem, dom, prot, num, arr, NULL);
}
void *xc_map_foreign_range(xc_interface *xch,
@@ -84,7 +84,7 @@ void *xc_map_foreign_ranges(xc_interface *xch,
void *xc_map_foreign_bulk(xc_interface *xch, uint32_t dom, int prot,
const xen_pfn_t *arr, int *err, unsigned int num)
{
- return xenforeignmemory_map(xch->fmem, dom, prot, arr, err, num);
+ return xenforeignmemory_map(xch->fmem, dom, prot, num, arr, err);
}
/*
@@ -318,7 +318,7 @@ static int process_page_data(struct xc_sr_context *ctx, unsigned count,
mapping = guest_page = xenforeignmemory_map(xch->fmem,
ctx->domid, PROT_READ | PROT_WRITE,
- mfns, map_errs, nr_pages);
+ nr_pages, mfns, map_errs);
if ( !mapping )
{
rc = -1;
@@ -154,7 +154,7 @@ static int write_batch(struct xc_sr_context *ctx)
if ( nr_pages > 0 )
{
guest_mapping = xenforeignmemory_map(xch->fmem,
- ctx->domid, PROT_READ, mfns, errors, nr_pages);
+ ctx->domid, PROT_READ, nr_pages, mfns, errors);
if ( !guest_mapping )
{
PERROR("Failed to map guest pages");