From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51841) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zi40l-0008W7-UX for qemu-devel@nongnu.org; Fri, 02 Oct 2015 13:20:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Zi40j-0006mL-Hw for qemu-devel@nongnu.org; Fri, 02 Oct 2015 13:20:47 -0400 Received: from mx1.redhat.com ([209.132.183.28]:54107) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zi40i-0006lz-WA for qemu-devel@nongnu.org; Fri, 02 Oct 2015 13:20:45 -0400 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by mx1.redhat.com (Postfix) with ESMTPS id 90A28461EE for ; Fri, 2 Oct 2015 17:20:44 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-116-59.ams2.redhat.com [10.36.116.59]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id t92HKgQJ032126 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO) for ; Fri, 2 Oct 2015 13:20:43 -0400 From: Markus Armbruster Date: Fri, 2 Oct 2015 19:20:31 +0200 Message-Id: <1443806441-23519-1-git-send-email-armbru@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: [Qemu-devel] [PULL 00/10] Fix device introspection regressions List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org 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. The following changes since commit ff770b07f34d28b79013a83989bd6c85f8f16b= 2f: Merge remote-tracking branch 'remotes/cody/tags/block-pull-request' int= o 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 ,help" (201= 5-10-02 16:45:53 +0200) ---------------------------------------------------------------- Fix device introspection regressions ---------------------------------------------------------------- Markus Armbruster (7): tests: Fix how qom-test is run libqtest: Clean up unused QTestState member sigact_old libqtest: New hmp() & friends device-introspect-test: New, covering device introspection qmp: Fix device-list-properties not to crash for abstract device qdev: Protect device-list-properties against broken devices Revert "qdev: Use qdev_get_device_class() for -device ,help" Paolo Bonzini (3): memory: allow destroying a non-empty MemoryRegion hw: do not pass NULL to memory_region_init from instance_init macio: move DBDMA_init from instance_init to realize hw/arm/allwinner-a10.c | 6 ++ hw/arm/digic.c | 6 ++ hw/arm/fsl-imx25.c | 6 ++ hw/arm/fsl-imx31.c | 6 ++ hw/arm/pxa2xx.c | 2 +- hw/arm/xlnx-zynqmp.c | 6 ++ hw/display/cg3.c | 4 +- hw/display/tcx.c | 2 +- hw/misc/arm_integrator_debug.c | 2 +- hw/misc/macio/cuda.c | 2 +- hw/misc/macio/macio.c | 14 ++--- hw/pci-host/versatile.c | 11 ++++ hw/pcmcia/pxa2xx.c | 6 +- hw/s390x/event-facility.c | 3 + hw/s390x/sclp.c | 3 + include/hw/qdev-core.h | 13 +++++ memory.c | 17 +++++- qdev-monitor.c | 9 ++- qmp.c | 11 ++++ target-alpha/cpu.c | 7 +++ target-arm/cpu.c | 11 ++++ target-cris/cpu.c | 7 +++ target-i386/cpu.c | 8 +++ target-lm32/cpu.c | 7 +++ target-m68k/cpu.c | 7 +++ target-microblaze/cpu.c | 6 ++ target-mips/cpu.c | 7 +++ target-moxie/cpu.c | 7 +++ target-openrisc/cpu.c | 7 +++ target-ppc/kvm.c | 4 ++ target-s390x/cpu.c | 7 +++ target-sh4/cpu.c | 7 +++ target-sparc/cpu.c | 7 +++ target-tilegx/cpu.c | 7 +++ target-tricore/cpu.c | 6 ++ target-unicore32/cpu.c | 7 +++ target-xtensa/cpu.c | 7 +++ tests/Makefile | 20 ++++--- tests/device-introspect-test.c | 124 +++++++++++++++++++++++++++++++++++= ++++++ tests/drive_del-test.c | 22 ++------ tests/ide-test.c | 8 +-- tests/libqtest.c | 38 ++++++++++++- tests/libqtest.h | 33 +++++++++++ 43 files changed, 449 insertions(+), 51 deletions(-) create mode 100644 tests/device-introspect-test.c --=20 2.4.3