From b4436a0b4db0334c3157f71e9baa2944a133c4d4 Mon Sep 17 00:00:00 2001 From: Cornelia Huck Date: Fri, 15 Feb 2013 10:18:43 +0100 Subject: virtio-ccw: Wire up ioeventfd. On hosts that support ioeventfd, make use of it for host-to-guest notifications via diagnose 500. Signed-off-by: Cornelia Huck --- hw/s390x/virtio-ccw.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'hw/s390x/virtio-ccw.h') diff --git a/hw/s390x/virtio-ccw.h b/hw/s390x/virtio-ccw.h index 121a5f8c4a..433f27af4b 100644 --- a/hw/s390x/virtio-ccw.h +++ b/hw/s390x/virtio-ccw.h @@ -69,6 +69,11 @@ typedef struct VirtIOCCWDeviceClass { /* Change here if we want to support more feature bits. */ #define VIRTIO_CCW_FEATURE_SIZE 1 +/* Performance improves when virtqueue kick processing is decoupled from the + * vcpu thread using ioeventfd for some devices. */ +#define VIRTIO_CCW_FLAG_USE_IOEVENTFD_BIT 1 +#define VIRTIO_CCW_FLAG_USE_IOEVENTFD (1 << VIRTIO_CCW_FLAG_USE_IOEVENTFD_BIT) + struct VirtioCcwDevice { DeviceState parent_obj; SubchDev *sch; @@ -76,6 +81,8 @@ struct VirtioCcwDevice { char *bus_id; uint32_t host_features[VIRTIO_CCW_FEATURE_SIZE]; VirtioBusState bus; + bool ioeventfd_started; + uint32_t flags; /* Guest provided values: */ hwaddr indicators; hwaddr indicators2; -- cgit v1.2.1