On 09/17/2012 04:42 PM, Paolo Bonzini wrote:
Il 17/09/2012 12:00, Evgeny Voevodin ha scritto:
Virtio back-end devices can be plugged into both transports:
VIRTIO_PCI and VIRTIO_MMIO. In order to choose the desired
transport we have a property "transport" in every back-end
state struct. By specifying -device virtio-blk-pci user chooses
VIRTIO_PCI transport and "transport" property is set automatically.
But in order to provide full control to user we need to have
"transport" property available to be set through command line:

-device virtio-pci,id=virtio-pci.0
-device virtio-blk,transport=virtio-pci.0,...
What's the difference between this and "bus"? i.e.

   -device virtio-pci,id=virtio-pci-0
   -device virtio-blk,bus=virtio-pci-0.0,...

Paolo


The difference is that with "transport" I used a linked list like, say, bdrv_states in block.c.
It's much simpler then use buses. Also I was planning to use a <link>.
In this approach buses are used only to reflect hierarchy of devices in emulator manager. And yes, cover letter contains quite misleading information because attach to transport is based on a list of links, not on buses. Sorry, I forgot that when wrote the cover.

--
Kind regards,
Evgeny Voevodin,
Technical Leader,
Mobile Group,
Samsung Moscow Research Center,
e-mail: e.voevo...@samsung.com


Reply via email to