mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 00:03:54 -06:00
virtio: link the rng backend through an alias property
The virtio-rng backend is currently linked twice, once in the proxy device (e.g. virtio-rng-pci) and once in virtio-rng-device. This causes a double unref of the backend when the parent device is unplugged. To fix this, make the proxy device use an alias, similar to what is already being done for the iothread link. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Gonglei <arei.gonglei@huawei.com> Message-id: 1414577839-18695-1-git-send-email-pbonzini@redhat.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
3e9418e160
commit
cbd5ac6991
3 changed files with 6 additions and 13 deletions
|
@ -1525,11 +1525,8 @@ static void virtio_rng_initfn(Object *obj)
|
|||
|
||||
virtio_instance_init_common(obj, &dev->vdev, sizeof(dev->vdev),
|
||||
TYPE_VIRTIO_RNG);
|
||||
object_property_add_link(obj, "rng", TYPE_RNG_BACKEND,
|
||||
(Object **)&dev->vdev.conf.rng,
|
||||
qdev_prop_allow_set_link_before_realize,
|
||||
OBJ_PROP_LINK_UNREF_ON_RELEASE, NULL);
|
||||
|
||||
object_property_add_alias(obj, "rng", OBJECT(&dev->vdev), "rng",
|
||||
&error_abort);
|
||||
}
|
||||
|
||||
static const TypeInfo virtio_rng_pci_info = {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue