WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [PATCH] libxl: use preferred syntax for network device c

To: Ian Campbell <ian.campbell@xxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH] libxl: use preferred syntax for network device creation with upstream qemu
From: Markus Armbruster <armbru@xxxxxxxxxx>
Date: Wed, 25 May 2011 16:59:10 +0200
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Wed, 25 May 2011 08:02:07 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <6b1fe0cba8a2f0bcc127.1306311646@xxxxxxxxxxxxxxxxxxxxxxxxx> (Ian Campbell's message of "Wed, 25 May 2011 09:20:46 +0100")
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <6b1fe0cba8a2f0bcc127.1306311646@xxxxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)
Ian Campbell <ian.campbell@xxxxxxxxxx> writes:

> # HG changeset patch
> # User Ian Campbell <ian.campbell@xxxxxxxxxx>
> # Date 1306311631 -3600
> # Node ID 6b1fe0cba8a2f0bcc1274c8e777da5b6c198b45d
> # Parent  8258c5a0ba35de937597e2c516bc88f8ebe1be35
> libxl: use preferred syntax for network device creation with upstream qemu
>
> Markus Armbruster points out in <m3r582pzc1.fsf@xxxxxxxxxxxxxxxxxxxxx>
> on qemu-devel that this is the prefered syntax going forward. Using it avoid
> needlessly instantiating a qemu "vlan" and instead creates a simply host end
> point and device.
>
> Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
> Cc: Markus Armbruster <armbru@xxxxxxxxxx>

I figure this is a good idea.

Important optimizations like GSO or vhost-net aren't feasible with
-net's VLANs (no relation to IEEE 802.1Q) .  That's why -netdev got
added[*].  VLANs are still around for backward compatibility.  I hope we
can get rid of them eventually.

> diff -r 8258c5a0ba35 -r 6b1fe0cba8a2 tools/libxl/libxl_dm.c
> --- a/tools/libxl/libxl_dm.c  Tue May 24 16:28:07 2011 +0100
> +++ b/tools/libxl/libxl_dm.c  Wed May 25 09:20:31 2011 +0100
> @@ -336,11 +336,11 @@ static char ** libxl__build_device_model
>                  } else {
>                      ifname = vifs[i].ifname;
>                  }
> -                flexarray_append(dm_args, "-net");
> -                flexarray_append(dm_args, libxl__sprintf(gc, 
> "nic,vlan=%d,macaddr=%s,model=%s",
> -                            vifs[i].devid, smac, vifs[i].model));
> -                flexarray_append(dm_args, "-net");
> -                flexarray_append(dm_args, libxl__sprintf(gc, 
> "tap,vlan=%d,ifname=%s,script=%s",
> +                flexarray_append(dm_args, "-device");
> +                flexarray_append(dm_args, libxl__sprintf(gc, 
> "%s,netdev=net%d,mac=%s",
> +                                                         vifs[i].model, 
> vifs[i].devid, smac));

You can name the device with "id=WHATEVER".  IDs are handy when you need
to refer to a device, e.g. for hot-unplug with device_del.

> +                flexarray_append(dm_args, "-netdev");
> +                flexarray_append(dm_args, libxl__sprintf(gc, 
> "type=tap,id=net%d,ifname=%s,script=%s",
>                              vifs[i].devid, ifname, libxl_tapif_script(gc)));
>                  ioemu_vifs++;
>              }
>

More info on conversion to -device syntax in docs/qdev-device-use.txt.
It's a bit stale, patch for updating it is on qemu-devel.

[*] http://lists.gnu.org/archive/html/qemu-devel/2009-10/msg00858.html

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel