From: Ian Jackson Date: Tue, 17 Dec 2013 18:35:16 +0000 (+0000) Subject: xen: Document that EVTCHNOP_bind_interdomain signals X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~5715 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=340702fd894add8adcdfd6c5742f41f89aa1fed2;p=xen.git xen: Document that EVTCHNOP_bind_interdomain signals EVTCHNOP_bind_interdomain signals the event channel. Document this. Also explain the usual use pattern. Signed-off-by: Ian Jackson Acked-by: Ian Campbell CC: Keir Fraser CC: Jan Beulich --- diff --git a/xen/include/public/event_channel.h b/xen/include/public/event_channel.h index b78ee32726..49ac8cca53 100644 --- a/xen/include/public/event_channel.h +++ b/xen/include/public/event_channel.h @@ -101,6 +101,17 @@ typedef struct evtchn_alloc_unbound evtchn_alloc_unbound_t; * a port that is unbound and marked as accepting bindings from the calling * domain. A fresh port is allocated in the calling domain and returned as * . + * + * In case the peer domain has already tried to set our event channel + * pending, before it was bound, EVTCHNOP_bind_interdomain always sets + * the local event channel pending. + * + * The usual pattern of use, in the guest's upcall (or subsequent + * handler) is as follows: (Re-enable the event channel for subsequent + * signalling and then) check for the existence of whatever condition + * is being waited for by other means, and take whatever action is + * needed (if any). + * * NOTES: * 1. may be DOMID_SELF, allowing loopback connections. */