qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: thuth@redhat.com, ehabkost@redhat.com, stefanha@redhat.com,
	pbonzini@redhat.com, afaerber@suse.de
Subject: [Qemu-devel] [PATCH v5 00/10] Fix device introspection regressions
Date: Thu,  1 Oct 2015 10:59:49 +0200	[thread overview]
Message-ID: <1443689999-12182-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-3 fixes one class of bugs involved in the regressions, PATCH
4-5 are libqtest preliminaries, PATCH 6 adds tests to demonstrate the
bugs, PATCH 7-9 fix them to a degree (see PATCH 8 for limitations),
and PATCH 10 cleans up.

v5:
* Prepend Paolo's "[PATCH 0/3] Fix dangling pointers from
  memory_region_init_*" series
* PATCH 2: Add fix for hw/pcmcia/pxa2xx.c
* PATCH 6: Document caller should g_free() return values [Thomas]
* PATCH 7: Drop devices fixed by Paolo from the blacklist
* PATCH 9: Rename cannot_even_create_with_object_new_yet to
  cannot_destroy_with_object_finalize_yet [Andreas],
  don't mark devices fixed by Paolo

v4:
* PATCH 4: Run "info qom-tree", refine blacklist, tweak commit
  message.
* PATCH 6: Mark "cgthree", "cuda", "integrator_debug", "macio",
  "pxa2xx-fir", "SUNW,tcx"; do not mark "spapr-rng" [Thomas]. tweak
  comments and commit message [Eduardo]

v3:
* PATCH 6: Mark "tilegx-cpu" [Eduardo] and new "spapr-rng", clean up
  whitespace

v2:
* PATCH 1: New, made from old PATCH 7 and relevant Makefile parts of
  old PATCH 3, with a much improved commit message [Andreas]
* PATCH 3: Fix hmp() [Eric]
* PATCH 4: Tweak commit message and comments [Eric]
* PATCH 6: Mark only the CPUs that are actually broken [Eduardo]

[*] [PATCH] qdev: Make -device FOO,help help again when FOO is not
pluggable
https://lists.gnu.org/archive/html/qemu-devel/2015-03/msg03459.html
Message-Id: <1426527232-15044-1-git-send-email-armbru@redhat.com>

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 <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/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

-- 
2.4.3

             reply	other threads:[~2015-10-01  9:00 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-01  8:59 Markus Armbruster [this message]
2015-10-01  8:59 ` [Qemu-devel] [PATCH v5 01/10] memory: allow destroying a non-empty MemoryRegion Markus Armbruster
2015-10-01  8:59 ` [Qemu-devel] [PATCH v5 02/10] hw: do not pass NULL to memory_region_init from instance_init Markus Armbruster
2015-10-01  9:49   ` Thomas Huth
2015-10-01  8:59 ` [Qemu-devel] [PATCH v5 03/10] macio: move DBDMA_init from instance_init to realize Markus Armbruster
2015-10-01  8:59 ` [Qemu-devel] [PATCH v5 04/10] tests: Fix how qom-test is run Markus Armbruster
2015-10-01  8:59 ` [Qemu-devel] [PATCH v5 05/10] libqtest: Clean up unused QTestState member sigact_old Markus Armbruster
2015-10-01 10:02   ` Thomas Huth
2015-10-01  8:59 ` [Qemu-devel] [PATCH v5 06/10] libqtest: New hmp() & friends Markus Armbruster
2015-10-01  8:59 ` [Qemu-devel] [PATCH v5 07/10] device-introspect-test: New, covering device introspection Markus Armbruster
2015-10-01  8:59 ` [Qemu-devel] [PATCH v5 08/10] qmp: Fix device-list-properties not to crash for abstract device Markus Armbruster
2015-10-01  8:59 ` [Qemu-devel] [PATCH v5 09/10] qdev: Protect device-list-properties against broken devices Markus Armbruster
2015-10-01  8:59 ` [Qemu-devel] [PATCH v5 10/10] Revert "qdev: Use qdev_get_device_class() for -device <type>, help" Markus Armbruster

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=1443689999-12182-1-git-send-email-armbru@redhat.com \
    --to=armbru@redhat.com \
    --cc=afaerber@suse.de \
    --cc=ehabkost@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    --cc=thuth@redhat.com \
    /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).