Message ID | 1477468040-21034-18-git-send-email-peterx@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Wed, Oct 26, 2016 at 03:47:20PM +0800, Peter Xu wrote: > I used pc-q35-2.7 instead of default q35 since I'd better make sure both > QEMU 2.7/2.8 can run the test, which is to at least satisfy the > following matrix: > > |----------+-----------+------------| > | versions | KVM < 4.7 | KVM >= 4.7 | > |----------+-----------+------------| > | QEMU 2.7 | | | > | QEMU 2.8 | | | > |----------+-----------+------------| > > If using default q35, QEMU2.8+KVM<4.7 will fail to run. > > Signed-off-by: Peter Xu <peterx@redhat.com> > --- > x86/unittests.cfg | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/x86/unittests.cfg b/x86/unittests.cfg > index f760d8f..d59cf68 100644 > --- a/x86/unittests.cfg > +++ b/x86/unittests.cfg > @@ -206,3 +206,10 @@ extra_params = -cpu kvm64,hv_time,hv_synic,hv_stimer -device hyperv-testdev > file = hyperv_clock.flat > smp = 2 > extra_params = -cpu kvm64,hv_time > + > +[intel_iommu] > +file = intel-iommu.flat > +arch = x86_64 > +timeout = 30 > +smp = 4 > +extra_params = -M pc-q35-2.7,kernel-irqchip=split -device intel-iommu,intremap=on -device edu > -- > 2.7.4 > Hmm, this is the first we've worried about this in kvm-unit-tests (And I'm not sure we should start). Usually we just want the tests to work with latest KVM and latest QEMU, or to graceful fail with report_xfail/skip/abort when it can determine that it's missing something it needs. Thanks, drew -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, Nov 04, 2016 at 06:46:23PM +0100, Andrew Jones wrote: > On Wed, Oct 26, 2016 at 03:47:20PM +0800, Peter Xu wrote: > > I used pc-q35-2.7 instead of default q35 since I'd better make sure both > > QEMU 2.7/2.8 can run the test, which is to at least satisfy the > > following matrix: > > > > |----------+-----------+------------| > > | versions | KVM < 4.7 | KVM >= 4.7 | > > |----------+-----------+------------| > > | QEMU 2.7 | | | > > | QEMU 2.8 | | | > > |----------+-----------+------------| > > > > If using default q35, QEMU2.8+KVM<4.7 will fail to run. > > > > Signed-off-by: Peter Xu <peterx@redhat.com> > > --- > > x86/unittests.cfg | 7 +++++++ > > 1 file changed, 7 insertions(+) > > > > diff --git a/x86/unittests.cfg b/x86/unittests.cfg > > index f760d8f..d59cf68 100644 > > --- a/x86/unittests.cfg > > +++ b/x86/unittests.cfg > > @@ -206,3 +206,10 @@ extra_params = -cpu kvm64,hv_time,hv_synic,hv_stimer -device hyperv-testdev > > file = hyperv_clock.flat > > smp = 2 > > extra_params = -cpu kvm64,hv_time > > + > > +[intel_iommu] > > +file = intel-iommu.flat > > +arch = x86_64 > > +timeout = 30 > > +smp = 4 > > +extra_params = -M pc-q35-2.7,kernel-irqchip=split -device intel-iommu,intremap=on -device edu > > -- > > 2.7.4 > > > > Hmm, this is the first we've worried about this in kvm-unit-tests (And > I'm not sure we should start). Usually we just want the tests to work > with latest KVM and latest QEMU, or to graceful fail with > report_xfail/skip/abort when it can determine that it's missing something > it needs. For this test, the latest command line should be: -M q35,kernel-irqchip=split -device intel-iommu,intremap=on -device edu However it will fail if kernel version <4.7 (without x2apic supported KVM). No chance for a report_skip(). I can use eim=off to avoid that check, however, if with "eim=off", we have: -M q35,kernel-irqchip=split -device intel-iommu,intremap=on,eim=off -device edu It requires QEMU to be latest (>2.8). Otherwise QEMU will report "eim property not found" and we lost chance to report as well. So, I just chose to use pc-q35-2.7 here. Not sure whether this is a good idea. -- peterx -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, Nov 07, 2016 at 01:06:27PM -0500, Peter Xu wrote: > On Fri, Nov 04, 2016 at 06:46:23PM +0100, Andrew Jones wrote: > > On Wed, Oct 26, 2016 at 03:47:20PM +0800, Peter Xu wrote: > > > I used pc-q35-2.7 instead of default q35 since I'd better make sure both > > > QEMU 2.7/2.8 can run the test, which is to at least satisfy the > > > following matrix: > > > > > > |----------+-----------+------------| > > > | versions | KVM < 4.7 | KVM >= 4.7 | > > > |----------+-----------+------------| > > > | QEMU 2.7 | | | > > > | QEMU 2.8 | | | > > > |----------+-----------+------------| > > > > > > If using default q35, QEMU2.8+KVM<4.7 will fail to run. > > > > > > Signed-off-by: Peter Xu <peterx@redhat.com> > > > --- > > > x86/unittests.cfg | 7 +++++++ > > > 1 file changed, 7 insertions(+) > > > > > > diff --git a/x86/unittests.cfg b/x86/unittests.cfg > > > index f760d8f..d59cf68 100644 > > > --- a/x86/unittests.cfg > > > +++ b/x86/unittests.cfg > > > @@ -206,3 +206,10 @@ extra_params = -cpu kvm64,hv_time,hv_synic,hv_stimer -device hyperv-testdev > > > file = hyperv_clock.flat > > > smp = 2 > > > extra_params = -cpu kvm64,hv_time > > > + > > > +[intel_iommu] > > > +file = intel-iommu.flat > > > +arch = x86_64 > > > +timeout = 30 > > > +smp = 4 > > > +extra_params = -M pc-q35-2.7,kernel-irqchip=split -device intel-iommu,intremap=on -device edu > > > -- > > > 2.7.4 > > > > > > > Hmm, this is the first we've worried about this in kvm-unit-tests (And > > I'm not sure we should start). Usually we just want the tests to work > > with latest KVM and latest QEMU, or to graceful fail with > > report_xfail/skip/abort when it can determine that it's missing something > > it needs. > > For this test, the latest command line should be: > > -M q35,kernel-irqchip=split -device intel-iommu,intremap=on -device edu > > However it will fail if kernel version <4.7 (without x2apic supported > KVM). No chance for a report_skip(). > > I can use eim=off to avoid that check, however, if with "eim=off", we have: > > -M q35,kernel-irqchip=split -device intel-iommu,intremap=on,eim=off -device edu > > It requires QEMU to be latest (>2.8). Otherwise QEMU will report "eim > property not found" and we lost chance to report as well. > > So, I just chose to use pc-q35-2.7 here. Not sure whether this is a > good idea. I think we just shouldn't care. Either this test is run on the latest kernel and qemu, or it will fail. Hopefully something ends up in test.log that indicates it failed due to an old kernel or old qemu. Old qemu is clear from the "eim property not found" Alternatively we can build support into runtime to capture kernel, qemu versions and compare them against new unittests.cfg {kvm,qemu}_minver fields. That would be a different series though, and will require extending mkstandalone as well. Feel free to add it to your TODO. If you do, then I hope you like Bash :-) Thanks, drew -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, Nov 08, 2016 at 11:39:55AM +0100, Andrew Jones wrote: [...] > > For this test, the latest command line should be: > > > > -M q35,kernel-irqchip=split -device intel-iommu,intremap=on -device edu > > > > However it will fail if kernel version <4.7 (without x2apic supported > > KVM). No chance for a report_skip(). > > > > I can use eim=off to avoid that check, however, if with "eim=off", we have: > > > > -M q35,kernel-irqchip=split -device intel-iommu,intremap=on,eim=off -device edu > > > > It requires QEMU to be latest (>2.8). Otherwise QEMU will report "eim > > property not found" and we lost chance to report as well. > > > > So, I just chose to use pc-q35-2.7 here. Not sure whether this is a > > good idea. > > I think we just shouldn't care. Either this test is run on the latest > kernel and qemu, or it will fail. Hopefully something ends up in test.log > that indicates it failed due to an old kernel or old qemu. Old qemu is > clear from the "eim property not found" I see. Then let me make it simpler. I'll use q35 directly with eim=off. > > Alternatively we can build support into runtime to capture kernel, qemu > versions and compare them against new unittests.cfg {kvm,qemu}_minver > fields. That would be a different series though, and will require > extending mkstandalone as well. Feel free to add it to your TODO. If you > do, then I hope you like Bash :-) Sure. It's in. And I like Bash. :-) Thanks, -- peterx -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/x86/unittests.cfg b/x86/unittests.cfg index f760d8f..d59cf68 100644 --- a/x86/unittests.cfg +++ b/x86/unittests.cfg @@ -206,3 +206,10 @@ extra_params = -cpu kvm64,hv_time,hv_synic,hv_stimer -device hyperv-testdev file = hyperv_clock.flat smp = 2 extra_params = -cpu kvm64,hv_time + +[intel_iommu] +file = intel-iommu.flat +arch = x86_64 +timeout = 30 +smp = 4 +extra_params = -M pc-q35-2.7,kernel-irqchip=split -device intel-iommu,intremap=on -device edu
I used pc-q35-2.7 instead of default q35 since I'd better make sure both QEMU 2.7/2.8 can run the test, which is to at least satisfy the following matrix: |----------+-----------+------------| | versions | KVM < 4.7 | KVM >= 4.7 | |----------+-----------+------------| | QEMU 2.7 | | | | QEMU 2.8 | | | |----------+-----------+------------| If using default q35, QEMU2.8+KVM<4.7 will fail to run. Signed-off-by: Peter Xu <peterx@redhat.com> --- x86/unittests.cfg | 7 +++++++ 1 file changed, 7 insertions(+)