diff options
author | Pavel Dovgalyuk <pavel.dovgalyuk@ispras.ru> | 2021-05-17 16:06:28 +0300 |
---|---|---|
committer | Michael S. Tsirkin <mst@redhat.com> | 2021-07-02 10:20:13 -0400 |
commit | 3909c079454a49b113c60a5cd91d749f78ca1c7f (patch) | |
tree | a2296c33fb1fb171423125c89e9ac388993ca818 /hw/s390x | |
parent | 9c2647f75004c4f7d64c9c0ec55f8c6f0739a8b1 (diff) | |
download | qemu-3909c079454a49b113c60a5cd91d749f78ca1c7f.zip qemu-3909c079454a49b113c60a5cd91d749f78ca1c7f.tar.gz qemu-3909c079454a49b113c60a5cd91d749f78ca1c7f.tar.bz2 |
virtio: disable ioeventfd for record/replay
virtio devices support separate iothreads waiting for
events from file descriptors. These are asynchronous
events that can't be recorded and replayed, therefore
this patch disables ioeventfd for all devices when
record or replay is enabled.
Signed-off-by: Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
Message-Id: <162125678869.1252810.4317416444097392406.stgit@pasha-ThinkPad-X280>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'hw/s390x')
-rw-r--r-- | hw/s390x/virtio-ccw.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/hw/s390x/virtio-ccw.c b/hw/s390x/virtio-ccw.c index d68888f..6a2df1c 100644 --- a/hw/s390x/virtio-ccw.c +++ b/hw/s390x/virtio-ccw.c @@ -31,6 +31,7 @@ #include "trace.h" #include "hw/s390x/css-bridge.h" #include "hw/s390x/s390-virtio-ccw.h" +#include "sysemu/replay.h" #define NR_CLASSIC_INDICATOR_BITS 64 @@ -770,6 +771,11 @@ static void virtio_ccw_device_realize(VirtioCcwDevice *dev, Error **errp) dev->flags &= ~VIRTIO_CCW_FLAG_USE_IOEVENTFD; } + /* fd-based ioevents can't be synchronized in record/replay */ + if (replay_mode != REPLAY_MODE_NONE) { + dev->flags &= ~VIRTIO_CCW_FLAG_USE_IOEVENTFD; + } + if (k->realize) { k->realize(dev, &err); if (err) { |