Re: [kvm-devel] [PATCH 2/6] virtio_config

2007-09-22 Thread Avi Kivity
Rusty Russell wrote:

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

 I'm not so sure.

 We were always assuming that Xen could do state management in its virtio
 layer.  If this is not true, it implies we need hooks in the virtio
 drivers, and I don't think we've made it worse by making it translate
 xenbus config info into virtio_config.
   

This means writing a low-level ABI in terms of a high level API.  And
while that describes virtualization fairly will, I prefer not to do this
more than strictly necessary.

However, this can be rewritten if/when Xen or VMware show interest in
porting their drivers to virtio.

-- 
Do not meddle in the internals of kernels, for they are subtle and quick to 
panic.


-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel


Re: [kvm-devel] [PATCH 2/6] virtio_config

2007-09-21 Thread Rusty Russell
On Thu, 2007-09-20 at 14:55 +0200, Avi Kivity wrote:
 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.

I'm not so sure.

We were always assuming that Xen could do state management in its virtio
layer.  If this is not true, it implies we need hooks in the virtio
drivers, and I don't think we've made it worse by making it translate
xenbus config info into virtio_config.

Rusty.


-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel


Re: [kvm-devel] [PATCH 2/6] virtio_config

2007-09-20 Thread Avi Kivity
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.

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


-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel


Re: [kvm-devel] [PATCH 2/6] virtio_config

2007-09-20 Thread Avi Kivity
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


-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel