Peter Maydell <peter.mayd...@linaro.org> writes: > On 2 October 2015 at 18:20, Markus Armbruster <arm...@redhat.com> wrote: >> QMP command device-list-properties regressed in 2.1: it can crash or >> leave dangling pointers behind. >> >> -device FOO,help regressed in 2.2: it no longer works for >> non-pluggable devices. I tried to fix that some time ago[*], but my >> fix failed review. This is my second, more comprehensive try. >> >> PATCH 1-3 fix one class of bugs involved in the regressions, PATCH 4-5 >> are libqtest preliminaries, PATCH 6 adds tests to demonstrate the >> remaining bugs, PATCH 7-9 fix them to a degree (see PATCH 8 for >> limitations), and PATCH 10 cleans up. > > This ordering breaks bisection of 'make check', as I found out when > I tried to figure out which of the patches in this pull was causing > an OSX test failure. Please can you reorder them so that 'make check' > works at all points in the series?
My ordering may be bad (and I'll recheck it, of course), or it may temporarily expose a hidden bug. I better figure out what's going on here. >> The following changes since commit ff770b07f34d28b79013a83989bd6c85f8f16b2f: >> >> Merge remote-tracking branch 'remotes/cody/tags/block-pull-request' into >> staging (2015-10-02 11:01:18 +0100) >> >> are available in the git repository at: >> >> git://repo.or.cz/qemu/armbru.git tags/pull-monitor-2015-10-02 >> >> for you to fetch changes up to e927162a6fa2fa6144de9d1d11cc9448a2143671: >> >> Revert "qdev: Use qdev_get_device_class() for -device <type>,help" >> (2015-10-02 16:45:53 +0200) >> >> ---------------------------------------------------------------- >> Fix device introspection regressions >> >> ---------------------------------------------------------------- > > 'make check' failure on OSX: > > /aarch64/device/introspect/list: OK > /aarch64/device/introspect/none: OK > /aarch64/device/introspect/abstract: OK > /aarch64/device/introspect/concrete: ** > ERROR:/Users/pm215/src/qemu-for-merges/qom/object.c:333:void > object_initialize_with_type(void *, size_t, TypeImpl *): assertion > failed: (type != NULL) > Broken pipe > FAIL > > I have no idea why this only failed on OSX... Can you re-run this with valgrind spliced in? I use something like $ QTEST_QEMU_BINARY="valgrind --vgdb-error=1 --log-file=vg.log qemu-system-aarch64" QTEST_QEMU_IMG=qemu-img MALLOC_PERTURB_=${MALLOC_PERTURB_:-$((RANDOM % 255 + 1))} gtester -k --verbose -m=quick tests/device-introspect-test > Backtrace: [Confusing due to inlining and other optimizations; snipped for now...]