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
commitdbb5c70a0d11b83cbc5b777ed5b5aa3684b61fef (patch)
tree2b28d368cd89ac4dd51c2d813a9e22ce18dc7cdc /tools/libxc/xc_minios.c
parent1fd1a4254d2990f976ca800f2776c1d019b3db27 (diff)
downloadxen-dbb5c70a0d11b83cbc5b777ed5b5aa3684b61fef.tar.gz
xen-dbb5c70a0d11b83cbc5b777ed5b5aa3684b61fef.tar.bz2
xen-dbb5c70a0d11b83cbc5b777ed5b5aa3684b61fef.zip
libxc: osdep: convert xc_evtchn_unbind()
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 b9587a493e..e01b4b4992 100644
--- a/tools/libxc/xc_minios.c
+++ b/tools/libxc/xc_minios.c
@@ -328,20 +328,21 @@ static evtchn_port_or_error_t minios_evtchn_bind_interdomain(xc_evtchn *xce, xc_
return local_port;
}
-int xc_evtchn_unbind(xc_evtchn *xce, evtchn_port_t port)
+static int minios_evtchn_unbind(xc_evtchn *xce, xc_osdep_handle h, evtchn_port_t port)
{
+ int fd = (int)h;
int i;
for (i = 0; i < MAX_EVTCHN_PORTS; i++)
- if (files[xce->fd].evtchn.ports[i].port == port) {
- files[xce->fd].evtchn.ports[i].port = -1;
+ if (files[fd].evtchn.ports[i].port == port) {
+ files[fd].evtchn.ports[i].port = -1;
break;
}
if (i == MAX_EVTCHN_PORTS) {
- printf("Warning: couldn't find port %"PRId32" for xc handle %x\n", port, xce->fd);
+ printf("Warning: couldn't find port %"PRId32" for xc handle %x\n", port, fd);
errno = -EINVAL;
return -1;
}
- files[xce->fd].evtchn.ports[i].bound = 0;
+ files[fd].evtchn.ports[i].bound = 0;
unbind_evtchn(port);
return 0;
}
@@ -410,6 +411,7 @@ static struct xc_osdep_ops minios_evtchn_ops = {
.bind_unbound_port = &minios_evtchn_bind_unbound_port,
.bind_interdomain = &minios_evtchn_bind_interdomain,
.bind_virq = &minios_evtchn_bind_virq,
+ .unbind = &minios_evtchn_unbind,
},
};