[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Intended purpose of virtio-rng's QOM link "rng"?
From: |
Michael S. Tsirkin |
Subject: |
Re: Intended purpose of virtio-rng's QOM link "rng"? |
Date: |
Mon, 20 Jul 2020 11:56:32 -0400 |
On Mon, Jul 20, 2020 at 05:07:08PM +0200, Markus Armbruster wrote:
> What is the intended purpose of object_property_set_link() in
>
> static void virtio_rng_pci_realize(VirtIOPCIProxy *vpci_dev, Error **errp)
> {
> VirtIORngPCI *vrng = VIRTIO_RNG_PCI(vpci_dev);
> DeviceState *vdev = DEVICE(&vrng->vdev);
>
> if (!qdev_realize(vdev, BUS(&vpci_dev->bus), errp)) {
> return;
> }
>
> object_property_set_link(OBJECT(vrng), "rng",
> OBJECT(vrng->vdev.conf.rng),
> NULL);
> }
>
> ?
>
> I'm asking because the function *always* fails. I believe it's been
> failing for years.
>
> Similar code in the CCW buddy. Also virtio-crypto-pci and
> virtio-crypto-ccw link "cryptodev".
>
> I tried moving it before qdev_realize(), where it doesn't fail. But
> then *I* fail, namely at finding any effect in QOM.
I suspect that's because there's already a link with that name
created by virtio core. Is that right?
> If it's really useless, I'll send a patch to drop it.
>
> If it has a use, tell me more, so I can test my patch to move it.