qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 07/11] qdev: add reference for the bus while it


From: Anthony Liguori
Subject: Re: [Qemu-devel] [PATCH 07/11] qdev: add reference for the bus while it is referred to by the DeviceState
Date: Mon, 07 Jan 2013 14:29:18 -0600
User-agent: Notmuch/0.13.2+93~ged93d79 (http://notmuchmail.org) Emacs/23.3.1 (x86_64-pc-linux-gnu)

Paolo Bonzini <address@hidden> writes:

> Now that the unparent callbacks are complete, we can correctly account
> more missing references.
>
> Signed-off-by: Paolo Bonzini <address@hidden>
> ---
>  hw/qdev.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/hw/qdev.c b/hw/qdev.c
> index d7f1545..62b6c14 100644
> --- a/hw/qdev.c
> +++ b/hw/qdev.c
> @@ -101,6 +101,7 @@ static void bus_add_child(BusState *bus, DeviceState 
> *child)
>  void qdev_set_parent_bus(DeviceState *dev, BusState *bus)
>  {
>      dev->parent_bus = bus;
> +    object_ref(OBJECT(bus));
>      bus_add_child(bus, dev);

If we make parent_bus a link property, we'll get the reference counting
for free.

Regards,

Anthony Liguori

>  }
>  
> @@ -734,6 +735,8 @@ static void qdev_remove_from_bus(Object *obj)
>      }
>      if (dev->parent_bus) {
>          bus_remove_child(dev->parent_bus, dev);
> +        object_unref(OBJECT(dev->parent_bus));
> +        dev->parent_bus = NULL;
>      }
>  }
>  
> -- 
> 1.8.0.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]