diff options
| author | Peter Maydell <peter.maydell@linaro.org> | 2019-07-01 13:03:51 +0100 |
|---|---|---|
| committer | Peter Maydell <peter.maydell@linaro.org> | 2019-07-01 13:03:51 +0100 |
| commit | ab67678a59e31d30b0f8587cdc245f93c2e56fef (patch) | |
| tree | ebf1089bdc110370e7f976b283ea2e61bb7039b1 /include/hw/xen/xen-bus.h | |
| parent | 7fec76a02267598a4e437ddfdaeaeb6de09b92f3 (diff) | |
| parent | a3434a2d56aee3018f4a0f55c7e0f0cda11f3d9e (diff) | |
| download | focaccia-qemu-ab67678a59e31d30b0f8587cdc245f93c2e56fef.tar.gz focaccia-qemu-ab67678a59e31d30b0f8587cdc245f93c2e56fef.zip | |
Merge remote-tracking branch 'remotes/aperard/tags/pull-xen-20190624' into staging
Xen queue * Fix build * xen-block: support feature-large-sector-size * xen-block: Support IOThread polling for PV shared rings * Avoid usage of a VLA * Cleanup Xen headers usage # gpg: Signature made Mon 24 Jun 2019 16:30:32 BST # gpg: using RSA key F80C006308E22CFD8A92E7980CF5572FD7FB55AF # gpg: issuer "anthony.perard@citrix.com" # gpg: Good signature from "Anthony PERARD <anthony.perard@gmail.com>" [marginal] # gpg: aka "Anthony PERARD <anthony.perard@citrix.com>" [marginal] # gpg: WARNING: This key is not certified with sufficiently trusted signatures! # gpg: It is not certain that the signature belongs to the owner. # Primary key fingerprint: 5379 2F71 024C 600F 778A 7161 D8D5 7199 DF83 42C8 # Subkey fingerprint: F80C 0063 08E2 2CFD 8A92 E798 0CF5 572F D7FB 55AF * remotes/aperard/tags/pull-xen-20190624: xen: Import other xen/io/*.h Revert xen/io/ring.h of "Clean up a few header guard symbols" xen: Drop includes of xen/hvm/params.h xen: Avoid VLA xen-bus / xen-block: add support for event channel polling xen-bus: allow AioContext to be specified for each event channel xen-bus: use a separate fd for each event channel xen-block: support feature-large-sector-size Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'include/hw/xen/xen-bus.h')
| -rw-r--r-- | include/hw/xen/xen-bus.h | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/include/hw/xen/xen-bus.h b/include/hw/xen/xen-bus.h index 3183f10e3c..1c2d9dfdb8 100644 --- a/include/hw/xen/xen-bus.h +++ b/include/hw/xen/xen-bus.h @@ -15,6 +15,7 @@ typedef void (*XenWatchHandler)(void *opaque); typedef struct XenWatch XenWatch; +typedef struct XenEventChannel XenEventChannel; typedef struct XenDevice { DeviceState qdev; @@ -28,8 +29,7 @@ typedef struct XenDevice { XenWatch *backend_online_watch; xengnttab_handle *xgth; bool feature_grant_copy; - xenevtchn_handle *xeh; - NotifierList event_notifiers; + QLIST_HEAD(, XenEventChannel) event_channels; } XenDevice; typedef char *(*XenDeviceGetName)(XenDevice *xendev, Error **errp); @@ -119,11 +119,10 @@ void xen_device_copy_grant_refs(XenDevice *xendev, bool to_domain, XenDeviceGrantCopySegment segs[], unsigned int nr_segs, Error **errp); -typedef struct XenEventChannel XenEventChannel; - -typedef void (*XenEventHandler)(void *opaque); +typedef bool (*XenEventHandler)(void *opaque); XenEventChannel *xen_device_bind_event_channel(XenDevice *xendev, + AioContext *ctx, unsigned int port, XenEventHandler handler, void *opaque, Error **errp); |