]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/linux/lguest_launcher.h
lguest: comment documentation update.
[linux-2.6-omap-h63xx.git] / include / linux / lguest_launcher.h
index 697104da91f11e159851c0698ff45dd0a1f5b618..e7217dc58f398fb7e6d11897faf2e7ac3d0dbfae 100644 (file)
  * a new device, we simply need to write a new virtio driver and create support
  * for it in the Launcher: this code won't need to change.
  *
+ * Virtio devices are also used by kvm, so we can simply reuse their optimized
+ * device drivers.  And one day when everyone uses virtio, my plan will be
+ * complete.  Bwahahahah!
+ *
  * Devices are described by a simplified ID, a status byte, and some "config"
  * bytes which describe this device's configuration.  This is placed by the
  * Launcher just above the top of physical memory:
 struct lguest_device_desc {
        /* The device type: console, network, disk etc.  Type 0 terminates. */
        __u8 type;
-       /* The number of bytes of the config array. */
+       /* The number of virtqueues (first in config array) */
+       __u8 num_vq;
+       /* The number of bytes of feature bits.  Multiply by 2: one for host
+        * features and one for Guest acknowledgements. */
+       __u8 feature_len;
+       /* The number of bytes of the config array after virtqueues. */
        __u8 config_len;
        /* A status byte, written by the Guest. */
        __u8 status;
@@ -31,7 +40,7 @@ struct lguest_device_desc {
 };
 
 /*D:135 This is how we expect the device configuration field for a virtqueue
- * (type VIRTIO_CONFIG_F_VIRTQUEUE) to be laid out: */
+ * to be laid out in config space. */
 struct lguest_vqconfig {
        /* The number of entries in the virtio_ring */
        __u16 num;