All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Anthony Liguori <aliguori@us.ibm.com>,
	Markus Armbruster <armbru@redhat.com>
Cc: "Kevin Wolf" <kwolf@redhat.com>,
	"Eduardo Habkost" <ehabkost@redhat.com>,
	libvir-list@redhat.com, "Stefan Hajnoczi" <stefanha@gmail.com>,
	qemu-devel@nongnu.org, "Luiz Capitulino" <lcapitulino@redhat.com>,
	"Gerd Hoffmann" <kraxel@redhat.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	Andreas =?utf-8?Q?F=C3=A4rber?= <afaerber@suse.de>
Subject: [Qemu-devel] [PATCHv5 0/3] DEVICE_DELETED event
Date: Mon, 11 Mar 2013 20:05:51 +0200	[thread overview]
Message-ID: <cover.1363025039.git.mst@redhat.com> (raw)

libvirt has a long-standing bug: when removing the device,
it can request removal but does not know when the
removal completes. Add an event so we can fix this in a robust way.

First patch only adds the event for devices with ID, second path adds it
for all devices and adds a path fields. Split this way for ease of
backport (stable downstreams without QOM would want to only take the
first patch), and also because the 2nd/3rd patches might turn out to be
more controversial - if they really turn
out such I'd like just the 1st one to get applied while we discuss 2 and
3.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>

Changes from v4:
    - Add extra triggers and extra fields as requested by Markus

Changes from v3:
    - Document that we only emit events for devices with
      and ID, as suggested by Markus
Changes from v2:
    - move event toward the end of device_unparent,
      so that parents are reported after their children,
      as suggested by Paolo
Changes from v1:
    - move to device_unparent
    - address comments by Andreas and Eric


-- 
Anthony Liguori


Michael S. Tsirkin (3):
  qdev: DEVICE_DELETED event
  qom: pass original path to unparent method
  qmp: add path to device_deleted event

 QMP/qmp-events.txt        | 18 ++++++++++++++++++
 hw/qdev.c                 | 15 +++++++++++++--
 include/monitor/monitor.h |  1 +
 include/qom/object.h      |  3 ++-
 monitor.c                 |  1 +
 qapi-schema.json          |  4 +++-
 qom/object.c              |  4 +++-
 7 files changed, 41 insertions(+), 5 deletions(-)

-- 
MST

             reply	other threads:[~2013-03-11 18:05 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-11 18:05 Michael S. Tsirkin [this message]
2013-03-11 18:05 ` [Qemu-devel] [PATCHv5 1/3] qdev: DEVICE_DELETED event Michael S. Tsirkin
2013-03-11 18:06 ` [Qemu-devel] [PATCHv5 2/3] qom: pass original path to unparent method Michael S. Tsirkin
2013-03-11 18:06 ` [Qemu-devel] [PATCHv5 3/3] qmp: add path to device_deleted event Michael S. Tsirkin
2013-03-13  7:45 ` [Qemu-devel] [PATCHv5 0/3] DEVICE_DELETED event Markus Armbruster
2013-03-13 16:41   ` Michael S. Tsirkin

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=cover.1363025039.git.mst@redhat.com \
    --to=mst@redhat.com \
    --cc=afaerber@suse.de \
    --cc=aliguori@us.ibm.com \
    --cc=armbru@redhat.com \
    --cc=ehabkost@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=lcapitulino@redhat.com \
    --cc=libvir-list@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@gmail.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 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.