From 83850d485c89973e94552b1300bce0513426d3e0 Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Fri, 28 Nov 2008 13:27:32 +0000 Subject: x86: add a shared page indicating the need for an EOI notification To simplify the interface for the guest, when a guest uses this new (sub-)hypercall, PHYSDEVOP_eoi behavior changes to unmask the corresponding event channel at once, avoiding the eventual need for a second hypercall from the guest. Signed-off-by: Jan Beulich Signed-off-by: Keir Fraser --- xen/common/event_channel.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'xen/common/event_channel.c') diff --git a/xen/common/event_channel.c b/xen/common/event_channel.c index 3993df4bc5..09702e3d1f 100644 --- a/xen/common/event_channel.c +++ b/xen/common/event_channel.c @@ -762,10 +762,9 @@ long evtchn_bind_vcpu(unsigned int port, unsigned int vcpu_id) } -static long evtchn_unmask(evtchn_unmask_t *unmask) +int evtchn_unmask(unsigned int port) { struct domain *d = current->domain; - int port = unmask->port; struct vcpu *v; spin_lock(&d->event_lock); @@ -916,7 +915,7 @@ long do_event_channel_op(int cmd, XEN_GUEST_HANDLE(void) arg) struct evtchn_unmask unmask; if ( copy_from_guest(&unmask, arg, 1) != 0 ) return -EFAULT; - rc = evtchn_unmask(&unmask); + rc = evtchn_unmask(unmask.port); break; } -- cgit v1.2.3