> From: Paolo Bonzini [mailto:pbonz...@redhat.com] > Sent: Monday, September 29, 2014 8:32 PM > Subject: Re: [PATCH RESEND 0/9] virtio: fix virtio child recount in transports > > Il 29/09/2014 12:53, Cornelia Huck ha scritto: > > void virtio_instance_init_common(Object *proxydev, > > DeviceState *vdev, > > size_t vdevsize, > > const char *vdevname) > > { > > object_initialize(vdev, vdevsize, vdevname); > > object_property_add_child(proxydev, "virtio-backend", OBJECT(vdev), > NULL); > > object_unref(OBJECT(vdev)); > > qdev_alias_all_properties(vdev, proxydev); > > } > > > > and have the initializers call > > > > virtio_instance_init_common(obj, DEVICE(&dev->vdev), sizeof(dev->vdev), > TYPE_WHATEVER); > > You cannot use DEVICE() here because dev->vdev has not been initialized > yet. But virtio_instance_init_common could just take a void*. > > Paolo
Good catch and suggestion, Thanks! Best regards, -Gonglei