start_address, count);
}
+int xc_gnttab_set_max_grants(xc_gnttab *xcg, uint32_t count)
+{
+ return xcg->ops->u.gnttab.set_max_grants(xcg, xcg->ops_handle, count);
+}
/*
* Local variables:
return 0;
}
-int xc_gnttab_set_max_grants(xc_gnttab *xcg, uint32_t count)
+static int linux_gnttab_set_max_grants(xc_gnttab *xcg, xc_osdep_handle h, uint32_t count)
{
+ int fd = (int)h;
struct ioctl_gntdev_set_max_grants set_max;
int rc;
set_max.count = count;
- if ( (rc = ioctl(xcg->fd, IOCTL_GNTDEV_SET_MAX_GRANTS, &set_max)) )
+ if ( (rc = ioctl(fd, IOCTL_GNTDEV_SET_MAX_GRANTS, &set_max)) )
return rc;
return 0;
.map_grant_refs = &linux_gnttab_map_grant_refs,
.map_domain_grant_refs = &linux_gnttab_map_domain_grant_refs,
.munmap = &linux_gnttab_munmap,
+ .set_max_grants = &linux_gnttab_set_max_grants,
},
};
return ret;
}
-int xc_gnttab_set_max_grants(xc_gnttab *xcg,
+static int minios_gnttab_set_max_grants(xc_gnttab *xcg, xc_osdep_handle h,
uint32_t count)
{
+ int fd = (int)h;
int ret;
- ret = gntmap_set_max_grants(&files[xcg->fd].gntmap,
+ ret = gntmap_set_max_grants(&files[fd].gntmap,
count);
if (ret < 0) {
errno = -ret;
.map_grant_refs = &minios_gnttab_map_grant_refs,
.map_domain_grant_refs = &minios_gnttab_map_domain_grant_refs,
.munmap = &minios_gnttab_munmap,
+ .set_max_grants = &minios_gnttab_set_max_grants,
},
};
int (*munmap)(xc_gnttab *xcg, xc_osdep_handle h,
void *start_address,
uint32_t count);
+ int (*set_max_grants)(xc_gnttab *xcg, xc_osdep_handle h, uint32_t count);
} gnttab;
} u;
};