qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Stefan Hajnoczi <stefanha@redhat.com>
To: qemu-devel@nongnu.org
Cc: qemu-block@nongnu.org, "Michael S. Tsirkin" <mst@redhat.com>,
	Kevin Wolf <kwolf@redhat.com>,
	Stefan Hajnoczi <stefanha@redhat.com>
Subject: [Qemu-devel] [PATCH 0/6] virtio: use ioeventfd in TCG and qtest mode
Date: Wed, 28 Jun 2017 19:47:18 +0100	[thread overview]
Message-ID: <20170628184724.21378-1-stefanha@redhat.com> (raw)

This patch series fixes qemu-iotests 068.  Since commit
ea4f3cebc4e0224605ab9dd9724aa4e7768fe372 ("qemu-iotests: 068: test iothread
mode") the test case has attempted to use dataplane without -M accel=kvm.
Although QEMU is capable of running TCG or qtest with emulated ioeventfd/irqfd
we haven't enabled it yet.

Unfortunately the virtio test cases fail when ioeventfd is enabled in qtest
mode.  This is because they make assumptions about virtqueue ISR signalling.
They assume that a request is completed when ISR becomes 1.  However, the ISR
can be set to 1 even though no new request has completed since commit
83d768b5640946b7da55ce8335509df297e2c7cd "virtio: set ISR on dataplane
notifications".

This issue is solved by introducing a proper qvirtqueue_get_buf() API (similar
to the Linux guest drivers) instead of making assumptions about the ISR.  Most
of the patches update the test cases to use the new API.

Stefan Hajnoczi (6):
  libqos: fix typo in virtio.h QVirtQueue->used comment
  libqos: add virtio used ring support
  tests: fix virtio-scsi-test ISR dependence
  tests: fix virtio-blk-test ISR dependence
  tests: fix virtio-net-test ISR dependence
  virtio-pci: use ioeventfd even when KVM is disabled

 tests/libqos/virtio.h    |  8 ++++++-
 hw/virtio/virtio-pci.c   |  2 +-
 tests/libqos/virtio.c    | 60 ++++++++++++++++++++++++++++++++++++++++++++++++
 tests/virtio-blk-test.c  | 27 ++++++++++++++--------
 tests/virtio-net-test.c  |  6 ++---
 tests/virtio-scsi-test.c |  2 +-
 6 files changed, 89 insertions(+), 16 deletions(-)

-- 
2.9.4

             reply	other threads:[~2017-06-28 18:47 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-28 18:47 Stefan Hajnoczi [this message]
2017-06-28 18:47 ` [Qemu-devel] [PATCH 1/6] libqos: fix typo in virtio.h QVirtQueue->used comment Stefan Hajnoczi
2017-06-29  8:32   ` Fam Zheng
2017-06-28 18:47 ` [Qemu-devel] [PATCH 2/6] libqos: add virtio used ring support Stefan Hajnoczi
2017-06-29  8:39   ` Fam Zheng
2017-06-28 18:47 ` [Qemu-devel] [PATCH 3/6] tests: fix virtio-scsi-test ISR dependence Stefan Hajnoczi
2017-06-29  8:40   ` Fam Zheng
2017-06-28 18:47 ` [Qemu-devel] [PATCH 4/6] tests: fix virtio-blk-test " Stefan Hajnoczi
2017-06-29  8:55   ` Fam Zheng
2017-06-28 18:47 ` [Qemu-devel] [PATCH 5/6] tests: fix virtio-net-test " Stefan Hajnoczi
2017-06-29  8:56   ` Fam Zheng
2017-06-28 18:47 ` [Qemu-devel] [PATCH 6/6] virtio-pci: use ioeventfd even when KVM is disabled Stefan Hajnoczi
2017-06-29  8:57   ` Fam Zheng
2017-06-28 19:38 ` [Qemu-devel] [PATCH 0/6] virtio: use ioeventfd in TCG and qtest mode Eric Blake
2017-06-29  9:47   ` Kevin Wolf
2017-06-29 23:34 ` Michael S. Tsirkin
2017-06-30 10:27 ` Stefan Hajnoczi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170628184724.21378-1-stefanha@redhat.com \
    --to=stefanha@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=mst@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).