[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [MINIOS] Fix to use new event-channel API properly.
# HG changeset patch # User kaf24@xxxxxxxxxxxxxxxxxxxx # Node ID fc8ae086f7061ebd092162ddb93e54e8964fce55 # Parent e269486165525e07d581b895df65e89f1e535d55 [MINIOS] Fix to use new event-channel API properly. Signed-off-by: Mark Williamson <mark.williamson@xxxxxxxxxxxx> --- extras/mini-os/events.c | 33 ++++++++----------- extras/mini-os/include/events.h | 7 +--- extras/mini-os/include/x86/x86_32/hypercall-x86_32.h | 6 +-- 3 files changed, 21 insertions(+), 25 deletions(-) diff -r e26948616552 -r fc8ae086f706 extras/mini-os/events.c --- a/extras/mini-os/events.c Fri Sep 15 11:04:41 2006 +0100 +++ b/extras/mini-os/events.c Fri Sep 15 11:07:25 2006 +0100 @@ -88,19 +88,18 @@ void unbind_evtchn(evtchn_port_t port ) int bind_virq(uint32_t virq, evtchn_handler_t handler, void *data) { - evtchn_op_t op; + evtchn_bind_virq_t op; /* Try to bind the virq to a port */ - op.cmd = EVTCHNOP_bind_virq; - op.u.bind_virq.virq = virq; - op.u.bind_virq.vcpu = smp_processor_id(); + op.virq = virq; + op.vcpu = smp_processor_id(); - if ( HYPERVISOR_event_channel_op(&op) != 0 ) + if ( HYPERVISOR_event_channel_op(EVTCHNOP_bind_virq, &op) != 0 ) { printk("Failed to bind virtual IRQ %d\n", virq); return 1; } - bind_evtchn(op.u.bind_virq.port, handler, data); + bind_evtchn(op.port, handler, data); return 0; } @@ -151,14 +150,13 @@ int evtchn_alloc_unbound(domid_t pal, ev int evtchn_alloc_unbound(domid_t pal, evtchn_handler_t handler, void *data, evtchn_port_t *port) { - evtchn_op_t op; - op.cmd = EVTCHNOP_alloc_unbound; - op.u.alloc_unbound.dom = DOMID_SELF; - op.u.alloc_unbound.remote_dom = pal; - int err = HYPERVISOR_event_channel_op(&op); + evtchn_alloc_unbound_t op; + op.dom = DOMID_SELF; + op.remote_dom = pal; + int err = HYPERVISOR_event_channel_op(EVTCHNOP_alloc_unbound, &op); if (err) return err; - *port = bind_evtchn(op.u.alloc_unbound.port, handler, data); + *port = bind_evtchn(op.port, handler, data); return err; } @@ -169,14 +167,13 @@ int evtchn_bind_interdomain(domid_t pal, evtchn_handler_t handler, void *data, evtchn_port_t *local_port) { - evtchn_op_t op; - op.cmd = EVTCHNOP_bind_interdomain; - op.u.bind_interdomain.remote_dom = pal; - op.u.bind_interdomain.remote_port = remote_port; - int err = HYPERVISOR_event_channel_op(&op); + evtchn_bind_interdomain_t op; + op.remote_dom = pal; + op.remote_port = remote_port; + int err = HYPERVISOR_event_channel_op(EVTCHNOP_bind_interdomain, &op); if (err) return err; - evtchn_port_t port = op.u.bind_interdomain.local_port; + evtchn_port_t port = op.local_port; clear_evtchn(port); /* Without, handler gets invoked now! */ *local_port = bind_evtchn(port, handler, data); return err; diff -r e26948616552 -r fc8ae086f706 extras/mini-os/include/events.h --- a/extras/mini-os/include/events.h Fri Sep 15 11:04:41 2006 +0100 +++ b/extras/mini-os/include/events.h Fri Sep 15 11:07:25 2006 +0100 @@ -39,10 +39,9 @@ int evtchn_bind_interdomain(domid_t pal, static inline int notify_remote_via_evtchn(evtchn_port_t port) { - evtchn_op_t op; - op.cmd = EVTCHNOP_send; - op.u.send.port = port; - return HYPERVISOR_event_channel_op(&op); + evtchn_send_t op; + op.port = port; + return HYPERVISOR_event_channel_op(EVTCHNOP_send, &op); } diff -r e26948616552 -r fc8ae086f706 extras/mini-os/include/x86/x86_32/hypercall-x86_32.h --- a/extras/mini-os/include/x86/x86_32/hypercall-x86_32.h Fri Sep 15 11:04:41 2006 +0100 +++ b/extras/mini-os/include/x86/x86_32/hypercall-x86_32.h Fri Sep 15 11:07:25 2006 +0100 @@ -238,9 +238,9 @@ HYPERVISOR_update_va_mapping( static inline int HYPERVISOR_event_channel_op( - void *op) -{ - return _hypercall1(int, event_channel_op, op); + int cmd, void *op) +{ + return _hypercall2(int, event_channel_op, cmd, op); } static inline int _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |