[Lguest] [PATCH 1/6] virtio interace

Dor Laor dor.laor at gmail.com
Sun Sep 23 21:20:11 EST 2007


Rusty Russell wrote:
> On Sat, 2007-09-22 at 12:01 +0200, Arnd Bergmann wrote:
>   
>> On Saturday 22 September 2007, Rusty Russell wrote:
>>     
>>> But now each virtio device has two "struct device"s, not one.   And
>>> you've made up a fictional bus to do it.
>>>
>>> Yet for PCI systems, it really is a PCI device; exposing a second bus to
>>> userspace just because we put a layer in our implementation is poor
>>> form.
>>>
>>> Perhaps this is the easiest way of doing it.  But it's still wrong.
>>>       
>> I think it's just a matter of perspective. In the model I'm advocating,
>> the PCI device is not the same as the virtio device but rather a virtio
>> host bridge, very much like USB or SATA works.
>>
>> We could easily have multiple virtio devices behind one PCI device, but
>> since virtual PCI devices are cheap, a one-to-one mapping makes sense
>> for simplicity.
>>     
>
> This is still retro-justification.  The simplest way for PCI systems to
> represent a virtio device as a PCI device; this makes life easy for any
> guest OS.
>
> I just know we're going to regret this...
> Rusty.
>
>
>   
I'm not sure what's best, maybe this can help:
With the virtio_find_driver you need to place all virtio drivers under 
the same pci device or suggest new mapping.
Using Arnd's solution (actually I implemented it for KVM before the new 
patch set) and  1-1 mapping for pci and virtio
devices makes life simpler.
Dor.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ozlabs.org/pipermail/lguest/attachments/20070923/07e3944a/attachment.htm>


More information about the Lguest mailing list