Paul Brook wrote:
virtio makes things a bit trickier though.  There's a shared ring queue
between the host and guest.  The ring queue is lock-less and depends on
the ability to atomically increment ring queue indices to be SMP safe.
Using a copy-API wouldn't be a problem for QEMU since the host and guest
are always running in lock-step.  A copy API is actually needed to deal
with differing host/guest alignment and endianness.

That seems a rather poor design choice, as many architectures don't have an atomic increment instruction. Oh well.

Sorry, I should have been more clear. An atomic increment isn't needed, just an atomic store.

Regards,

Anthony Liguori

Paul






Reply via email to