Currently we only pass script=no to Qemu, to avoid calling any scripts when attaching a tap interface, but we should also pass downscript=no to avoid Qemu trying to execute a script when disconnecting the interface. This prevents the following harmless error message: /etc/qemu-ifdown: could not launch network script Changes since v2: * Remove non related indentation changes. Changes since v1: * Indentation fixes. Signed-off-by: Roger Pau Monne <roger.pau@citrix.com> --- tools/libxl/libxl_dm.c | 21 ++++++++++++++------- 1 files changed, 14 insertions(+), 7 deletions(-) diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c index ff5f8ad..0d7524c 100644 --- a/tools/libxl/libxl_dm.c +++ b/tools/libxl/libxl_dm.c @@ -215,9 +215,14 @@ static char ** libxl__build_device_model_args_old(libxl__gc *gc, flexarray_vappend(dm_args, "-net", libxl__sprintf(gc, "nic,vlan=%d,macaddr=%s,model=%s", vifs[i].devid, smac, vifs[i].model), - "-net", libxl__sprintf(gc, "tap,vlan=%d,ifname=%s,bridge=%s,script=%s", - vifs[i].devid, ifname, vifs[i].bridge, libxl_tapif_script(gc)), - NULL); + "-net", + GCSPRINTF( + "tap,vlan=%d,ifname=%s,bridge=%s," + "script=%s,downscript=%s", + vifs[i].devid, ifname, vifs[i].bridge, + libxl_tapif_script(gc), + libxl_tapif_script(gc)), + NULL); ioemu_vifs++; } } @@ -455,10 +460,12 @@ static char ** libxl__build_device_model_args_new(libxl__gc *gc, vifs[i].model, vifs[i].devid, vifs[i].devid, smac)); 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))); + flexarray_append(dm_args, GCSPRINTF( + "type=tap,id=net%d,ifname=%s," + "script=%s,downscript=%s", + vifs[i].devid, ifname, + libxl_tapif_script(gc), + libxl_tapif_script(gc))); ioemu_vifs++; } } -- 1.7.7.5 (Apple Git-26)
Roger Pau Monne
2012-May-10 12:19 UTC
[PATCH 2/2] libxl: fix indentation in libxl_dm.c for qemu
Fixed indentation on Qemu argument construction for network devices. Signed-off-by: Roger Pau Monne <roger.pau@citrix.com> --- tools/libxl/libxl_dm.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c index 0d7524c..c0d7ca1 100644 --- a/tools/libxl/libxl_dm.c +++ b/tools/libxl/libxl_dm.c @@ -213,8 +213,10 @@ static char ** libxl__build_device_model_args_old(libxl__gc *gc, domid, vifs[i].devid, LIBXL_NIC_TYPE_IOEMU); flexarray_vappend(dm_args, - "-net", libxl__sprintf(gc, "nic,vlan=%d,macaddr=%s,model=%s", - vifs[i].devid, smac, vifs[i].model), + "-net", + GCSPRINTF( + "nic,vlan=%d,macaddr=%s,model=%s", + vifs[i].devid, smac, vifs[i].model), "-net", GCSPRINTF( "tap,vlan=%d,ifname=%s,bridge=%s," -- 1.7.7.5 (Apple Git-26)
Roger Pau Monne writes ("[Xen-devel] [PATCH 1/2] libxl: add "downscript=no" to Qemu call"):> Currently we only pass script=no to Qemu, to avoid calling any scripts when > attaching a tap interface, but we should also pass downscript=no to avoid Qemu > trying to execute a script when disconnecting the interface. This prevents the > following harmless error message:Acked and applied both, thanks. Ian.