]> git.karo-electronics.de Git - karo-tx-linux.git/commit
xen/events: Add the hypervisor interface for the FIFO-based event channels
authorDavid Vrabel <david.vrabel@citrix.com>
Fri, 15 Mar 2013 10:55:41 +0000 (10:55 +0000)
committerDavid Vrabel <david.vrabel@citrix.com>
Mon, 11 Nov 2013 11:53:48 +0000 (11:53 +0000)
commit8207aa0d817a044e915215418285d06c5e1068b1
treec4bc1ed78825f7483d916c8fd5f5f04690fb172e
parent573bad95aa9e3c44b9df83fd49de596b8c5ef68e
xen/events: Add the hypervisor interface for the FIFO-based event channels

Add the hypercall sub-ops and the structures for the shared data used
in the FIFO-based event channel ABI.

The design document for this new ABI is available here:

    http://xenbits.xen.org/people/dvrabel/event-channels-H.pdf

In summary, events are reported using a per-domain shared event array
of event words.  Each event word has PENDING, LINKED and MASKED bits
and a LINK field for pointing to the next event in the event queue.

There are 16 event queues (with different priorities) per-VCPU.

Key advantages of this new ABI include:

- Support for over 100,000 events (2^17).
- 16 different event priorities.
- Improved fairness in event latency through the use of FIFOs.

The ABI is available in Xen 4.4 and later.

Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
drivers/xen/events/events_2l.c
include/xen/interface/event_channel.h
include/xen/interface/xen.h