On Wed, 2009-04-29 at 15:53 -0500, Anthony Liguori wrote: 
> -#define VIRTIO_NET_VM_VERSION    6
> +/* Version 7 has TAP_VNET_HDR support.  This is reserved in upstream QEMU to
> + * avoid future conflict.
> + * We can't assume verisons > 7 have TAP_VNET_HDR support until this is 
> merged
> + * in upstream QEMU.
> + */
> +#define VIRTIO_NET_VM_VERSION    7

It seems like you're saying you're only going to reserve version number
7, and not the 4 bytes of savevm we're using for version 7 here.
Couldn't we fix this by adding a dummy patch to qemu to bump to version
7, and push/pop a 4 byte zero from the savevm?  Then we could change the
code below to >= 7.  Qemu should probably puke on a savevm image with
non-zero in this location until the kvm code gets merged.  Looks like
one byte would be more than sufficient if we wanted to make that change
now too.  Thanks,

Alex
 
>  #define MAC_TABLE_ENTRIES    32
>  #define MAX_VLAN    (1 << 12)   /* Per 802.1Q definition */
> @@ -652,8 +657,9 @@ static int virtio_net_load(QEMUFile *f, void *opaque, int 
> version_id)
>          qemu_get_buffer(f, (uint8_t *)n->vlans, MAX_VLAN >> 3);
>  
>  #ifdef TAP_VNET_HDR
> -    if (qemu_get_be32(f))
> +    if (version_id == 7 && qemu_get_be32(f)) {
>          tap_using_vnet_hdr(n->vc->vlan->first_client, 1);
> +    }
>  #endif
>  
>      if (n->tx_timer_active) {


--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to