From: Peter Xu <peterx@redhat.com>
To: "Radim Krčmář" <rkrcmar@redhat.com>
Cc: kvm@vger.kernel.org, jan.kiszka@web.de, agordeev@redhat.com,
drjones@redhat.com, pbonzini@redhat.com
Subject: Re: [kvm-unit-tests RFC PATCH 00/14] VT-d unit test
Date: Thu, 20 Oct 2016 19:23:53 +0800 [thread overview]
Message-ID: <20161020112353.GM15168@pxdev.xzpeter.org> (raw)
In-Reply-To: <20161020110858.GE8573@potion>
On Thu, Oct 20, 2016 at 01:08:59PM +0200, Radim Krčmář wrote:
> 2016-10-20 14:05+0800, Peter Xu:
> > On Wed, Oct 19, 2016 at 10:21:11PM +0200, Radim Krčmář wrote:
> >> 2016-10-14 20:40+0800, Peter Xu:
> >> > The problem is, there are many IOMMU error conditions which are
> >> > very hard to be triggered in a real guest (IOMMU has merely no
> >> > interface for guest user, and it's totally running in the background).
> >>
> >> I gracefully skipped most of VT-d error handling ... how many of those
> >> errors are not a result of a misconfiguration?
> >
> > Do you mean the error handling codes in hw/i386/intel_iommu.c?
>
> Yes, I meant the error codes that IOMMU will pass to the OS.
>
> > IMHO
> > most of those errors will be triggered only if there is bug in guest
> > OS IOMMU driver.
>
> We can't know what the OS wanted, so there are no OS bugs for us. :)
> If an OS (mis)configures the device, then it should get an expected
> error code -- these paths are rarely exercised, so unit tests for them
> would be useful too. (Very low priority, though, so I don't expect that
> anyone will every write them.)
Yeah, though my original goal was not for this, but this is a good
point.
>
> > Here when I talked about error conditions, I mostly meant potential
> > QEMU IOMMU bugs, not guest OS bugs (of course, AFAICT kvm-unit-tests
> > are not for guest OS bugs). For example, there are still bugs in IOMMU
> > IR, and some of the bugs can hardly be triggered by guest OS. In that
> > case, we need this unit test to reproduce the bug, and re-run it to
> > verify when I have a fix. Otherwise even if I fixed the bug one day, I
> > can never reproduce it, nor can I know whether the fix works.
>
> I see, thanks, this is a great goal for unit tests.
>
> Btw. isn't this series already testing one fixed QEMU bug?
Nop. Actually...
> When I run this test with old QEMU (qemu-2.7.0-3.fc26), then I get this
> output:
>
> [...]
> INTR: setup IRTE index 0
> lib/pci.c:52: assert failed: dev && dev->inited && dev->msi_offset
> STACK: 40344c 402fd1 400567 40028f
>
> new QEMU works fine, so I assume that we should test it and not assert.
... here the assertion should be failing at msi_offset == 0, since MSI
support for hw/misc/edu.c device is just added days ago in commit:
commit eabb5782f70b4a10975b24ccd7129929a05ac932
Author: Peter Xu <peterx@redhat.com>
Date: Wed Sep 28 21:03:39 2016 +0800
hw/misc/edu: support MSI interrupt
I should mention this in the cover letter that we need the latest QEMU
with at least above commit to run the tests. Will do it in v2.
Thanks,
-- peterx
next prev parent reply other threads:[~2016-10-20 11:23 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-14 12:40 [kvm-unit-tests RFC PATCH 00/14] VT-d unit test Peter Xu
2016-10-14 12:40 ` [kvm-unit-tests PATCH 01/14] x86: vm: allow multiple init for vm setup Peter Xu
2016-10-20 8:17 ` Andrew Jones
2016-10-20 8:24 ` Peter Xu
2016-10-20 8:41 ` Andrew Jones
2016-10-20 8:55 ` Peter Xu
2016-10-20 9:39 ` Andrew Jones
2016-10-20 11:01 ` Peter Xu
2016-10-14 12:40 ` [kvm-unit-tests PATCH 02/14] x86: smp: allow multiple init for smp setup Peter Xu
2016-10-19 20:23 ` Radim Krčmář
2016-10-20 1:27 ` Peter Xu
2016-10-20 8:20 ` Andrew Jones
2016-10-20 8:27 ` Peter Xu
2016-10-14 12:40 ` [kvm-unit-tests PATCH 03/14] x86: intel-iommu: add vt-d init test Peter Xu
2016-10-20 9:30 ` Andrew Jones
2016-10-21 9:52 ` Peter Xu
2016-10-21 12:18 ` Andrew Jones
2016-10-24 6:36 ` Peter Xu
2016-10-14 12:40 ` [kvm-unit-tests PATCH 04/14] pci: refactor init process to pci_dev_init() Peter Xu
2016-10-20 10:02 ` Andrew Jones
2016-10-24 7:00 ` Peter Xu
2016-10-14 12:40 ` [kvm-unit-tests PATCH 05/14] page: add page alignment checker Peter Xu
2016-10-20 12:23 ` Andrew Jones
2016-10-20 12:30 ` Andrew Jones
2016-10-24 9:58 ` Peter Xu
2016-10-14 12:40 ` [kvm-unit-tests PATCH 06/14] util: move MAX/MIN macro into util.h Peter Xu
2016-10-20 12:28 ` Andrew Jones
2016-10-24 10:02 ` Peter Xu
2016-10-14 12:40 ` [kvm-unit-tests PATCH 07/14] vm/page: provide PGDIR_OFFSET() macro Peter Xu
2016-10-20 12:40 ` Andrew Jones
2016-10-14 12:40 ` [kvm-unit-tests PATCH 08/14] x86: pci: add pci_config_{read|write}[bw]() helpers Peter Xu
2016-10-20 12:43 ` Andrew Jones
2016-10-24 10:08 ` Peter Xu
2016-10-14 12:40 ` [kvm-unit-tests PATCH 09/14] pci: provide pci_set_master() Peter Xu
2016-10-20 12:49 ` Andrew Jones
2016-10-24 10:11 ` Peter Xu
2016-10-14 12:40 ` [kvm-unit-tests PATCH 10/14] pci: add bdf helpers Peter Xu
2016-10-20 12:55 ` Andrew Jones
2016-10-24 14:44 ` Peter Xu
2016-10-14 12:40 ` [kvm-unit-tests PATCH 11/14] pci: edu: introduce pci-edu helpers Peter Xu
2016-10-20 13:19 ` Andrew Jones
2016-10-25 3:34 ` Peter Xu
2016-10-25 10:43 ` Andrew Jones
2016-10-25 11:33 ` Peter Xu
2016-10-14 12:40 ` [kvm-unit-tests PATCH 12/14] x86: intel-iommu: add dmar test Peter Xu
2016-10-19 20:33 ` Radim Krčmář
2016-10-20 5:41 ` Peter Xu
2016-10-14 12:40 ` [kvm-unit-tests PATCH 13/14] pci: add msi support for 32/64bit address Peter Xu
2016-10-20 13:30 ` Andrew Jones
2016-10-25 6:21 ` Peter Xu
2016-10-14 12:40 ` [kvm-unit-tests PATCH 14/14] x86: intel-iommu: add IR test Peter Xu
2016-10-20 13:45 ` Andrew Jones
2016-10-25 6:52 ` Peter Xu
2016-10-19 20:21 ` [kvm-unit-tests RFC PATCH 00/14] VT-d unit test Radim Krčmář
2016-10-20 6:05 ` Peter Xu
2016-10-20 11:08 ` Radim Krčmář
2016-10-20 11:23 ` Peter Xu [this message]
2016-10-20 11:28 ` Peter Xu
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=20161020112353.GM15168@pxdev.xzpeter.org \
--to=peterx@redhat.com \
--cc=agordeev@redhat.com \
--cc=drjones@redhat.com \
--cc=jan.kiszka@web.de \
--cc=kvm@vger.kernel.org \
--cc=pbonzini@redhat.com \
--cc=rkrcmar@redhat.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.