qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Converting PCIDevice to VirtIODevice


From: Paolo Bonzini
Subject: Re: [Qemu-devel] Converting PCIDevice to VirtIODevice
Date: Wed, 26 Sep 2018 18:54:59 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.0

On 26/09/2018 17:33, Sameeh Jubran wrote:
> 
> I have used the function "pci_qdev_find_device" to find a device using
> it's id. This is a virtio device and I'm trying to convert it to
> VirtIODevice.
> 
> What's the best way to do this? Simply converting it to DeviceState
> doesn't work and I think I should access the underlying virtio pci bus
> and through it access the virtio-device, but couldn't find any elegant
> way of doing so.

virtio_pci_ioeventfd_assign does something similar.  You need to first
cast the PCIDevice* pci_dev to a VirtIOPCIProxy*, and then you can get
the virtio bus and device:

    VirtIOPCIProxy *proxy = VIRTIO_PCI(pci_dev);
    VirtIODevice *vdev = virtio_bus_get_device(&proxy->bus);

Paolo



reply via email to

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