[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH] libxc: NetBSD: implement xc_evtchn_bind_unbound_port



# HG changeset patch
# User Ian Campbell <ian.campbell@xxxxxxxxxx>
# Date 1291293181 0
# Node ID 9c0c5aa7b9fec2740fe3647d89d2a1437ffeddd8
# Parent  55acbaeab0badc9cded7c1b56af79e45d0f78929
libxc: NetBSD: implement xc_evtchn_bind_unbound_port.

Doesn't actually appear to be used anywhere but is defined for other
OSes.

The NetBSD evtchn.h contains comments "Return allocated port" for
several ioctls which currently return the allocated port as a member
of the argument structure and not as the ioctl return value (I think
this is a cut and paste error).

I have assumed that this ioctl follows the same pattern as the
existing NetBSD ioctls and removed the misleading comments.

Not even compile tested.

Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>

diff -r 55acbaeab0ba -r 9c0c5aa7b9fe tools/include/xen-sys/NetBSD/evtchn.h
--- a/tools/include/xen-sys/NetBSD/evtchn.h     Thu Dec 02 12:33:01 2010 +0000
+++ b/tools/include/xen-sys/NetBSD/evtchn.h     Thu Dec 02 12:33:01 2010 +0000
@@ -33,7 +33,6 @@
 
 /*
  * Bind a fresh port to VIRQ @virq.
- * Return allocated port.
  */
 #define IOCTL_EVTCHN_BIND_VIRQ                         \
        _IOWR('E', 4, struct ioctl_evtchn_bind_virq)
@@ -44,7 +43,6 @@ struct ioctl_evtchn_bind_virq {
 
 /*
  * Bind a fresh port to remote <@remote_domain, @remote_port>.
- * Return allocated port.
  */
 #define IOCTL_EVTCHN_BIND_INTERDOMAIN                  \
        _IOWR('E', 5, struct ioctl_evtchn_bind_interdomain)
@@ -55,7 +53,6 @@ struct ioctl_evtchn_bind_interdomain {
 
 /*
  * Allocate a fresh port for binding to @remote_domain.
- * Return allocated port.
  */
 #define IOCTL_EVTCHN_BIND_UNBOUND_PORT                 \
        _IOWR('E', 6, struct ioctl_evtchn_bind_unbound_port)
diff -r 55acbaeab0ba -r 9c0c5aa7b9fe tools/libxc/xc_netbsd.c
--- a/tools/libxc/xc_netbsd.c   Thu Dec 02 12:33:01 2010 +0000
+++ b/tools/libxc/xc_netbsd.c   Thu Dec 02 12:33:01 2010 +0000
@@ -206,6 +206,21 @@ int xc_evtchn_notify(int xce_handle, evt
 }
 
 evtchn_port_or_error_t
+xc_evtchn_bind_unbound_port(int xce_handle, int domid)
+{
+    struct ioctl_evtchn_bind_unbound_port bind;
+    int ret;
+
+    bind.remote_domain = domid;
+
+    ret = ioctl(xce_handle, IOCTL_EVTCHN_BIND_UNBOUND_PORT, &bind);
+    if (ret == 0)
+       return bind.port;
+    else
+       return -1;
+}
+
+evtchn_port_or_error_t
 xc_evtchn_bind_interdomain(int xce_handle, int domid,
                            evtchn_port_t remote_port)
 {

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.