Il 16/12/2012 22:15, Michael S. Tsirkin ha scritto:
>> A PCI bus reset (or FLR) calls pci_device_reset which does this
>>
>> void pci_device_reset(PCIDevice *dev)
>> {
>> int r;
>>
>> qdev_reset_all(&dev->qdev);
>> ...
>> }
>>
>> This is exactly how a PCI bus reset clears pending MSIX vectors.
>>
>> Paolo
>
> Yes but I mean virtio-pci device is not a bus.
> virtio could be a bus.
> Our modeling seems incorrect and relying on it for correctness,
> looks a bit wrong.
If virtio were a bus, everything would work just as well. The bus reset
method would not be implemented and qdev_reset_all would proceed past
the bus and reset the virtio device. So virtio_reset would not be
needed either.
Paolo