All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH for-2.11 v3 0/2] Check for the availability of a hotplug controller before adding a device
@ 2017-11-02 10:10 Thomas Huth
  2017-11-02 10:10 ` [Qemu-devel] [PATCH v3 1/2] qdev_monitor: Simplify error handling in qdev_device_add() Thomas Huth
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Thomas Huth @ 2017-11-02 10:10 UTC (permalink / raw)
  To: qemu-devel, Eduardo Habkost, Igor Mammedov,
	Dr. David Alan Gilbert
  Cc: Markus Armbruster, Paolo Bonzini, david

First patch is a small clean up to the error handling code in
qdev_device_add(), and the second patch adds a proper check for
the availability of a hotplug controller to prevent the possibility
of a crash with device_del.

The crash can currently be triggered for example like this:

$ s390x-softmmu/qemu-system-s390x -M none -nographic 
QEMU 2.10.50 monitor - type 'help' for more information
(qemu) device_add qemu-s390x-cpu,id=x
(qemu) device_del x
**
ERROR:qemu/qdev-monitor.c:872:qdev_unplug: assertion failed: (hotplug_ctrl)
Aborted (core dumped)

v3:
 - Invert the logic of the second error check in the first patch
   as suggested by Igor
 - Updated the patch description of the second patch with the current
   way to crash QEMU

v2:
 - Do the check for the availability of the hotplug controller earlier
   in qdev_device_add
 - Use common new err_dev_del handler in case of failure

Thomas Huth (2):
  qdev_monitor: Simplify error handling in qdev_device_add()
  qdev: Check for the availability of a hotplug controller before adding
    a device

 hw/core/qdev.c         | 28 ++++++++++++++++++++--------
 include/hw/qdev-core.h |  1 +
 qdev-monitor.c         | 21 +++++++++++++--------
 3 files changed, 34 insertions(+), 16 deletions(-)

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2018-01-09 20:09 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-02 10:10 [Qemu-devel] [PATCH for-2.11 v3 0/2] Check for the availability of a hotplug controller before adding a device Thomas Huth
2017-11-02 10:10 ` [Qemu-devel] [PATCH v3 1/2] qdev_monitor: Simplify error handling in qdev_device_add() Thomas Huth
2017-11-07 14:01   ` Cornelia Huck
2017-11-02 10:10 ` [Qemu-devel] [PATCH v3 2/2] qdev: Check for the availability of a hotplug controller before adding a device Thomas Huth
2017-11-07 14:17   ` Cornelia Huck
2017-11-13 14:00   ` Markus Armbruster
2017-11-13 14:12     ` Thomas Huth
2017-12-18 11:59 ` [Qemu-devel] [PATCH for-2.11 v3 0/2] " Thomas Huth
2018-01-09 20:09   ` Eduardo Habkost

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.