qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Subject: [Qemu-devel] [PULL v3 00/12] Fix device introspection regressions
Date: Fri,  9 Oct 2015 16:36:35 +0200	[thread overview]
Message-ID: <1444401407-7849-1-git-send-email-armbru@redhat.com> (raw)

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-5 fix several bugs involved in the regressions, PATCH 6-8 are
libqtest preliminaries, PATCH 9 adds tests to demonstrate the
remaining bugs, PATCH 10-11 fix them to a degree (see PATCH 11 for
limitations), and PATCH 12 cleans up.

v3:
* PATCH 01: new

v2:
* PATCH 01: new
* PATCH 08,10: Drop all changes for devices "sclp" and
  "s390-sclp-event-facility", because they've been fixed in master

The following changes since commit b37686f7e84b22cfaf7fd01ac5133f2617cc3027:

  Merge remote-tracking branch 'remotes/stefanha/tags/tracing-pull-request' into staging (2015-10-09 12:18:14 +0100)

are available in the git repository at:

  git://repo.or.cz/qemu/armbru.git tags/pull-monitor-2015-10-09

for you to fetch changes up to 33fe96833015cf15f4c0aa5bf8d34f60526e0732:

  Revert "qdev: Use qdev_get_device_class() for -device <type>,help" (2015-10-09 15:25:57 +0200)

----------------------------------------------------------------
Fix device introspection regressions

----------------------------------------------------------------
Markus Armbruster (9):
      update-linux-headers: Rename SW_MAX to SW_MAX_
      virtio-input: Fix device introspection on non-Linux hosts
      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 <type>,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/input/Makefile.objs                 |   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/virtio/virtio-pci.c                 |  20 +++---
 hw/virtio/virtio-pci.h                 |   4 ++
 include/hw/qdev-core.h                 |  13 ++++
 include/standard-headers/linux/input.h |   4 +-
 memory.c                               |  17 ++++-
 qdev-monitor.c                         |   9 ++-
 qmp.c                                  |  11 +++
 scripts/update-linux-headers.sh        |   1 +
 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 +++++++++
 46 files changed, 463 insertions(+), 62 deletions(-)
 create mode 100644 tests/device-introspect-test.c

-- 
2.4.3

             reply	other threads:[~2015-10-09 14:36 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-09 14:36 Markus Armbruster [this message]
2015-10-09 14:36 ` [Qemu-devel] [PULL v3 01/12] update-linux-headers: Rename SW_MAX to SW_MAX_ Markus Armbruster
2015-10-09 14:36 ` [Qemu-devel] [PULL v3 02/12] virtio-input: Fix device introspection on non-Linux hosts Markus Armbruster
2015-10-09 14:36 ` [Qemu-devel] [PULL v3 03/12] memory: allow destroying a non-empty MemoryRegion Markus Armbruster
2015-10-09 14:36 ` [Qemu-devel] [PULL v3 04/12] hw: do not pass NULL to memory_region_init from instance_init Markus Armbruster
2015-10-09 14:36 ` [Qemu-devel] [PULL v3 05/12] macio: move DBDMA_init from instance_init to realize Markus Armbruster
2015-10-09 14:36 ` [Qemu-devel] [PULL v3 06/12] tests: Fix how qom-test is run Markus Armbruster
2015-10-09 14:36 ` [Qemu-devel] [PULL v3 07/12] libqtest: Clean up unused QTestState member sigact_old Markus Armbruster
2015-10-09 14:36 ` [Qemu-devel] [PULL v3 08/12] libqtest: New hmp() & friends Markus Armbruster
2015-10-09 14:36 ` [Qemu-devel] [PULL v3 09/12] device-introspect-test: New, covering device introspection Markus Armbruster
2015-10-09 14:36 ` [Qemu-devel] [PULL v3 10/12] qmp: Fix device-list-properties not to crash for abstract device Markus Armbruster
2015-10-09 14:36 ` [Qemu-devel] [PULL v3 11/12] qdev: Protect device-list-properties against broken devices Markus Armbruster
2015-10-09 15:32   ` Andreas Färber
2015-10-09 14:36 ` [Qemu-devel] [PULL v3 12/12] Revert "qdev: Use qdev_get_device_class() for -device <type>, help" Markus Armbruster
2015-10-12 12:13 ` [Qemu-devel] [PULL v3 00/12] Fix device introspection regressions Peter Maydell

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=1444401407-7849-1-git-send-email-armbru@redhat.com \
    --to=armbru@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).