aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxc/xc_minios.c
diff options
context:
space:
mode:
authorIan Campbell <ian.campbell@citrix.com>2010-12-03 09:36:47 +0000
committerIan Campbell <ian.campbell@citrix.com>2010-12-03 09:36:47 +0000
commit1fd1a4254d2990f976ca800f2776c1d019b3db27 (patch)
treed41ac8a6b4dd958fb649d99f6a073b867c81ec28 /tools/libxc/xc_minios.c
parentb491e4e05dabc4708bb21d426c38774996fc111a (diff)
downloadxen-1fd1a4254d2990f976ca800f2776c1d019b3db27.tar.gz
xen-1fd1a4254d2990f976ca800f2776c1d019b3db27.tar.bz2
xen-1fd1a4254d2990f976ca800f2776c1d019b3db27.zip
libxc: osdep: convert xc_evtchn_bind_virq()
Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
Diffstat (limited to 'tools/libxc/xc_minios.c')
-rw-r--r--tools/libxc/xc_minios.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/tools/libxc/xc_minios.c b/tools/libxc/xc_minios.c
index 631078a31d..b9587a493e 100644
--- a/tools/libxc/xc_minios.c
+++ b/tools/libxc/xc_minios.c
@@ -346,25 +346,26 @@ int xc_evtchn_unbind(xc_evtchn *xce, evtchn_port_t port)
return 0;
}
-evtchn_port_or_error_t xc_evtchn_bind_virq(xc_evtchn *xce, unsigned int virq)
+static evtchn_port_or_error_t minios_evtchn_bind_virq(xc_evtchn *xce, xc_osdep_handle h, unsigned int virq)
{
+ int fd = (int)h;
evtchn_port_t port;
int i;
assert(get_current() == main_thread);
- i = port_alloc(xce->fd);
+ i = port_alloc(fd);
if (i == -1)
return -1;
printf("xc_evtchn_bind_virq(%d)", virq);
- port = bind_virq(virq, evtchn_handler, (void*)(intptr_t)xce->fd);
+ port = bind_virq(virq, evtchn_handler, (void*)(intptr_t)fd);
if (port < 0) {
errno = -port;
return -1;
}
- files[xce->fd].evtchn.ports[i].bound = 1;
- files[xce->fd].evtchn.ports[i].port = port;
+ files[fd].evtchn.ports[i].bound = 1;
+ files[fd].evtchn.ports[i].port = port;
unmask_evtchn(port);
return port;
}
@@ -408,6 +409,7 @@ static struct xc_osdep_ops minios_evtchn_ops = {
.notify = &minios_evtchn_notify,
.bind_unbound_port = &minios_evtchn_bind_unbound_port,
.bind_interdomain = &minios_evtchn_bind_interdomain,
+ .bind_virq = &minios_evtchn_bind_virq,
},
};