[Lguest] [kvm-devel] [PATCH 2/6] virtio_config

Avi Kivity avi at qumranet.com
Thu Sep 20 22:55:35 EST 2007


Avi Kivity wrote:
> Rusty Russell wrote:
>> Previous versions of virtio didn't commonalize probing.  For every
>> driver, every virtio implementation (KVM, lguest, etc) needed an
>> in-kernel stub to join their bus to the probe code.
>>
>> To solve this, we introduce a "virtio_config" mechanism, which is
>> simply a set of [u8 type][u8 len][...data...] fields for each device.
>> Some convenient wrapper functions make this fairly easy for drivers to
>> unpack their configuration data themselves.
>>
>> This configuration data could be PCI config space, or an unrelated bus
>> (eg. lguest) or manufactured by the kernel itself.  It's designed to
>> be extensible: fields get marked as the device reads them so a host
>> supporting some future extension can tell if the guest driver
>> understood it.  This also applies to bitfields: the guest explicitly
>> acks the bits it understands.
>>
>> There's also a simple status bitmask useful for low-level host
>> analysis of what the guest is doing with the device.
>>
>>   
>
> Lovely.
>

A side effect of this is that Xen drivers can no longer use virtio.


-- 
error compiling committee.c: too many arguments to function




More information about the Lguest mailing list