On 10/25/13 11:08, Paolo Bonzini wrote:
> What QEMU currently does, is that value zero actually resets the
> device, including _all the queues_ and setting the status to 0. Is
> your bug reporter using another virtio implementation?
Yes, the "AArch64 foundation model":
http://thread.gmane.org/gmane.comp.bios.tianocore.devel/4373/focus=4411
I find that name a bit confusing (when I had heard it first I thought it
was real hardware), but in reality it is an emulator:
http://thread.gmane.org/gmane.comp.bios.tianocore.devel/4217/focus=4257
http://www.arm.com/products/tools/models/fast-models/foundation-model.php
We did consider the host side as culprit:
http://thread.gmane.org/gmane.comp.bios.tianocore.devel/4373/focus=4435
But then Mark pointed out that the code doesn't do what the virtio spec
seems to mandate (that is, zero out the QeueuePFNs explicitly,
regardless of whether the device is wholly reset or not).
> I'm not sure this is the right thing to do, but the device reset
> should definitely include a full vq reset, which in turn includes
> zeroing QueuePFN.
Indeed!
Thanks!
Laszlo