On Mon, 21 Oct 2019 at 17:12, Andrew Jones <drjo...@redhat.com> wrote: > > On Mon, Oct 21, 2019 at 04:43:22PM +0100, Peter Maydell wrote: > > On Mon, 21 Oct 2019 at 15:23, Andrew Jones <drjo...@redhat.com> wrote: > > > Peter, would you mind running your test on the kvm32 machine with this > > > change before I send a v7? > > > > Still fails: > > > > pm215@pm-ct:~/qemu/build/arm$ > > QTEST_QEMU_BINARY=arm-softmmu/qemu-system-arm tests/arm-cpu-features > > /arm/arm/query-cpu-model-expansion: OK > > /arm/arm/kvm/query-cpu-model-expansion: ** > > ERROR:/home/pm215/qemu/tests/arm-cpu-features.c:498:test_query_cpu_model_expansion_kvm: > > assertion failed: (resp_has_props(_resp)) > > Aborted > > > > This is asserting on the line: > > 498 assert_has_not_feature(qts, "host", "sve"); > > > > Oh, I see. It's not failing the specific absence of 'sve', but the test > code (assert_has_not_feature()) is assuming at least one property is > present. This isn't the case for kvm32 'host' cpus. They apparently > have none. We need this patch too, then > > diff --git a/tests/arm-cpu-features.c b/tests/arm-cpu-features.c > index 14100ebd8521..9aa728ed8469 100644 > --- a/tests/arm-cpu-features.c > +++ b/tests/arm-cpu-features.c > @@ -136,8 +136,8 @@ static bool resp_get_feature(QDict *resp, const char > *feature) > ({ \ > QDict *_resp = do_query_no_props(qts, cpu_type); \ > g_assert(_resp); \ > - g_assert(resp_has_props(_resp)); \ > - g_assert(!qdict_get(resp_get_props(_resp), feature)); \ > + g_assert(!resp_has_props(_resp) || \ > + !qdict_get(resp_get_props(_resp), feature)); \ > qobject_unref(_resp); \ > })
Yep, with that extra the test passes. I'm just rerunning the full 'make check'... thanks -- PMM