On 02/02/2012 10:45 AM, Paolo Bonzini wrote:
The reference that is returned by qdev_device_add is never given
back, so that device_del does not cause the refcount to go to zero
(and thus does nothing).

Signed-off-by: Paolo Bonzini<pbonz...@redhat.com>
---
  vl.c |    1 +
  1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/vl.c b/vl.c
index d88a18c..c63af69 100644
--- a/vl.c
+++ b/vl.c
@@ -1746,6 +1746,7 @@ static int device_init_func(QemuOpts *opts, void *opaque)
      dev = qdev_device_add(opts);
      if (!dev)
          return -1;
+    object_unref(OBJECT(dev));
      return 0;

Is this still needed with qom-upstream.14? I fixed a bug on .14 that involved child properties that was making device-del sometimes fail.

If it is, what's your test case? I have a device_del test case that seems to be working right now without this patch.

Regards,

Anthony Liguori

  }



Reply via email to