From mboxrd@z Thu Jan 1 00:00:00 1970 From: ZhouPeng Subject: Re: [PATCH] Play with spice for xen-upstream-qemu on upstream Xen Date: Tue, 19 Apr 2011 12:46:02 +0800 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=bcaec544eee26e1c4404a13e2fb1 Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Stefano Stabellini , "ian.jackson" Cc: "Xen-Devel (E-mail)" List-Id: xen-devel@lists.xenproject.org --bcaec544eee26e1c4404a13e2fb1 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Signed-off-by: Zhou Peng This patch allows you to play with spice for xen-upstream-qemu on upstream Xen or released Xen-4.1.0. Nothing need to be modified in xen-upstream-qemu, because qemu has include spice's code as a new feature since qemu-0.14. Usage: Add spice fields in VM configuration file. #spice spice=3D1 spiceport=3D6000 spicehost=3D'192.168.1.187' spicedisable_ticketing =3D 0 # default is 0 spicepasswd =3D 'password' apic=3D0 # disable acpi, but if you used the appended patch, set acpi=3D0 You may need to disable acpi(I'm not sure), but if you want to disable acpi, you may need to set apic =3D 0, (Yes, It is apic not acpi, pls don't ask me why, because I am also confused with it). If you feel uncomfortable by setting apic =3D 0, you can try an additional patch appended, then you can use acpi=3D0 in vm cfg file to give "no-acpi" argument to qemu= . diff -r 3f00c5faa12a tools/libxl/libxl.idl --- a/tools/libxl/libxl.idl Wed Apr 13 16:10:26 2011 +0100 +++ b/tools/libxl/libxl.idl Tue Apr 19 12:31:19 2011 +0800 @@ -153,6 +153,13 @@ libxl_device_model_info =3D Struct("device ("keymap", string, False, "set keyboard layout, default is en-us keyboard"), ("sdl", bool, False, "sdl enabled or disable= d"), ("opengl", bool, False, "opengl enabled or disabled (if enabled requires sdl enabled)"), + ("spice", bool, False, "spice enabled or disabled"), + ("spiceport", integer, False, "the port that should be listened on for the spice server"), + ("spicetls_port", integer, False, "the tls port that should be listened on for the spice server, at least one of the port or tls port must be given"), + ("spicehost", string, False, "the interface that should be listened on if given otherwise any interface"), + ("spicedisable_ticketing", bool, False, "Enable client connection with no password"), + ("spicepasswd", string, False, "set ticket password, witch must be used by a client for connection. The passwords never expires"), + ("spiceagent_mouse", bool, False, "Whether spice agent is used for client mouse mode(default is on)"), ("nographic", bool, False, "no graphics, use serial port"), ("gfx_passthru", bool, False, "graphics passthrough enabled or disabled"), ("serial", string, False, "serial port re-direct to pty deivce"), diff -r 3f00c5faa12a tools/libxl/libxl_dm.c --- a/tools/libxl/libxl_dm.c Wed Apr 13 16:10:26 2011 +0100 +++ b/tools/libxl/libxl_dm.c Tue Apr 19 12:31:19 2011 +0800 @@ -234,6 +234,42 @@ static char ** libxl__build_device_model } if (info->sdl) { flexarray_append(dm_args, "-sdl"); + } + if (info->spice) { + char *spiceoptions =3D NULL; + if (!info->spiceport && !info->spicetls_port) { + LIBXL__LOG(ctx, LIBXL__LOG_ERROR, + ": at least one of the spiceport or tls_port must be provided"); + return NULL; + } + + if (!info->spicedisable_ticketing) { + if (!info->spicepasswd) { + LIBXL__LOG(ctx, LIBXL__LOG_ERROR, + ": spice ticketing is enabled but missing password"); + return NULL; + } + else if (!info->spicepasswd[0]) { + LIBXL__LOG(ctx, LIBXL__LOG_ERROR, ": spice password can't be empty"); + return NULL; + } + } + spiceoptions =3D libxl__sprintf(gc, "port=3D%d,tls-port=3D%d", + info->spiceport, info->spicetls_port); + if (!info->spicehost) + spiceoptions =3D libxl__sprintf(gc, + "%s,host=3D%s", spiceoptions, info->spicehost); + if (info->spicedisable_ticketing) + spiceoptions =3D libxl__sprintf(gc, "%s,disable-ticketing", spiceoptions); + else + spiceoptions =3D libxl__sprintf(gc, + "%s,password=3D%s", spiceoptions, info->spicepasswd); + spiceoptions =3D libxl__sprintf(gc, "%s,agent-mouse=3D%s", spiceop= tions, + info->spiceagent_mouse ? "on" : "off= "); + + flexarray_append(dm_args, "-spice"); + flexarray_append(dm_args, spiceoptions); + printf("SPICE Options:\n -spice %s\n", spiceoptions); } if (info->type =3D=3D XENPV && !info->nographic) { diff -r 3f00c5faa12a tools/libxl/xl_cmdimpl.c --- a/tools/libxl/xl_cmdimpl.c Wed Apr 13 16:10:26 2011 +0100 +++ b/tools/libxl/xl_cmdimpl.c Tue Apr 19 12:31:19 2011 +0800 @@ -1089,6 +1089,20 @@ skip_vfb: dm_info->sdl =3D l; if (!xlu_cfg_get_long (config, "opengl", &l)) dm_info->opengl =3D l; + if (!xlu_cfg_get_long (config, "spice", &l)) + dm_info->spice =3D l; + if (!xlu_cfg_get_long (config, "spiceport", &l)) + dm_info->spiceport =3D l; + if (!xlu_cfg_get_long (config, "spicetls_port", &l)) + dm_info->spicetls_port =3D l; + xlu_cfg_replace_string (config, "spicehost", &dm_info->spicehost); + if (!xlu_cfg_get_long (config, "spicedisable_ticketing", &l)) + dm_info->spicedisable_ticketing =3D l; + xlu_cfg_replace_string (config, "spicepasswd", &dm_info->spicepass= wd); + if (!xlu_cfg_get_long (config, "spiceagent_mouse", &l)) + dm_info->spiceagent_mouse =3D l; + else + dm_info->spiceagent_mouse =3D 1; if (!xlu_cfg_get_long (config, "nographic", &l)) dm_info->nographic =3D l; if (!xlu_cfg_get_long (config, "gfx_passthru", &l)) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3DAppended patch=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Signed-off-by: Zhou Peng tool/libxl: mistake apic for acpi in libxl__build_device_model_args_old/new It may be advisedly coded for some reason, then it can be a mistake of my understanding. diff -r 6871474a2a09 -r 01f8b29dda8e tools/libxl/libxl_dm.c --- a/tools/libxl/libxl_dm.c Fri Apr 15 10:06:59 2011 +0800 +++ b/tools/libxl/libxl_dm.c Fri Apr 15 15:17:42 2011 +0800 @@ -120,7 +120,7 @@ static char ** libxl__build_device_model if (info->soundhw) { flexarray_vappend(dm_args, "-soundhw", info->soundhw, NULL); } - if (info->apic) { + if (info->acpi) { flexarray_append(dm_args, "-acpi"); } if (info->vcpus > 1) { @@ -268,7 +268,7 @@ static char ** libxl__build_device_model if (info->soundhw) { flexarray_vappend(dm_args, "-soundhw", info->soundhw, NULL); } - if (!info->apic) { + if (!info->acpi) { flexarray_append(dm_args, "-no-acpi"); } if (info->vcpus > 1) { > > For detailed: > > http://code.google.com/p/spice4xen/wiki/Using_Upstream_Qemu > > Cool! Does it mean that it works right now? Yes, it works right. now. > > > > -=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 libxl__sprin= tf(gc, "%s:%d%s", listen, display, > > -=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 = info->vncunused ? ",to=3D99" : "")); > > +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 libxl__sprin= tf(gc, "%s:%d%s,%s", listen, display, > > +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 = info->vncunused ? ",to=3D99" : "", info->vncpasswd)); > > This is not actually part of the spice support patch to libxl, is it? No, it is not part of spice of libxl. It's mess msg because of my negligenc= e Thanks for your review, -- Zhou Peng Operating System Technology Group Institute of Software, the Chinese Academy of Sciences (ISCAS) --bcaec544eee26e1c4404a13e2fb1 Content-Type: text/x-patch; charset=US-ASCII; name="spice-upstreamXen-upstreamQemu.diff" Content-Disposition: attachment; filename="spice-upstreamXen-upstreamQemu.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gmocmhuo0 U2lnbmVkLW9mZi1ieTogWmhvdSBQZW5nIDx6aG91cGVuZ0BuZnMuaXNjYXMuYWMuY24+CgpUaGlz IHBhdGNoIGFsbG93cyB5b3UgdG8gcGxheSB3aXRoIHNwaWNlIGZvcgp4ZW4tdXBzdHJlYW0tcWVt dSBvbiB1cHN0cmVhbSBYZW4gb3IgcmVsZWFzZWQgWGVuLTQuMS4wLgoKTm90aGluZyBuZWVkIHRv IGJlIG1vZGlmaWVkIGluIHhlbi11cHN0cmVhbS1xZW11LCAKYmVjYXVzZSBxZW11IGhhcyBpbmNs dWRlIHNwaWNlJ3MgY29kZSBhcyBhIG5ldyBmZWF0dXJlIHNpbmNlIHFlbXUtMC4xNC4KClVzYWdl OgoKQWRkIHNwaWNlIGZpZWxkcyBpbiBWTSBjb25maWd1cmF0aW9uIGZpbGUuCiNzcGljZQpzcGlj ZT0xCnNwaWNlcG9ydD02MDAwCnNwaWNlaG9zdD0nMTkyLjE2OC4xLjE4NycKc3BpY2VkaXNhYmxl X3RpY2tldGluZyA9IDAgIyBkZWZhdWx0IGlzIDAKc3BpY2VwYXNzd2QgPSAncGFzc3dvcmQnCgph cGljPTAgIyBkaXNhYmxlIGFjcGksIGJ1dCBpZiB5b3UgdXNlZCB0aGUgYXBwZW5kZWQgcGF0Y2gs IHNldCBhY3BpPTAKCllvdSBtYXkgbmVlZCB0byBkaXNhYmxlIGFjcGkoSSdtIG5vdCBzdXJlKSwK YnV0IGlmIHlvdSB3YW50IHRvIGRpc2FibGUgYWNwaSwgeW91IG1heSBuZWVkIHRvIHNldAphcGlj ID0gMCwgKFllcywgSXQgaXMgYXBpYyBub3QgYWNwaSwgcGxzIGRvbid0IGFzayBtZSB3aHksIGJl Y2F1c2UgSSBhbSBhbHNvIGNvbmZ1c2VkIHdpdGggaXQpLgpJZiB5b3UgZmVlbCB1bmNvbWZvcnRh YmxlIGJ5IHNldHRpbmcgYXBpYyA9IDAsIHlvdSBjYW4gdHJ5IGFuIGFkZGl0aW9uYWwgcGF0Y2gg YXBwZW5kZWQsCnRoZW4geW91IGNhbiB1c2UgYWNwaT0wIGluIHZtIGNmZyBmaWxlIHRvIGdpdmUg Im5vLWFjcGkiIGFyZ3VtZW50IHRvIHFlbXUuCgoKZGlmZiAtciAzZjAwYzVmYWExMmEgdG9vbHMv bGlieGwvbGlieGwuaWRsCi0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsLmlkbAlXZWQgQXByIDEzIDE2 OjEwOjI2IDIwMTEgKzAxMDAKKysrIGIvdG9vbHMvbGlieGwvbGlieGwuaWRsCVR1ZSBBcHIgMTkg MTI6MzE6MTkgMjAxMSArMDgwMApAQCAtMTUzLDYgKzE1MywxMyBAQCBsaWJ4bF9kZXZpY2VfbW9k ZWxfaW5mbyA9IFN0cnVjdCgiZGV2aWNlCiAgICAgKCJrZXltYXAiLCAgICAgICAgICAgc3RyaW5n LCAgICAgICAgICAgIEZhbHNlLCAic2V0IGtleWJvYXJkIGxheW91dCwgZGVmYXVsdCBpcyBlbi11 cyBrZXlib2FyZCIpLAogICAgICgic2RsIiwgICAgICAgICAgICAgIGJvb2wsICAgICAgICAgICAg ICBGYWxzZSwgInNkbCBlbmFibGVkIG9yIGRpc2FibGVkIiksCiAgICAgKCJvcGVuZ2wiLCAgICAg ICAgICAgYm9vbCwgICAgICAgICAgICAgIEZhbHNlLCAib3BlbmdsIGVuYWJsZWQgb3IgZGlzYWJs ZWQgKGlmIGVuYWJsZWQgcmVxdWlyZXMgc2RsIGVuYWJsZWQpIiksCisgICAgKCJzcGljZSIsICAg ICAgICAgICAgYm9vbCwgICAgICAgICAgICAgIEZhbHNlLCAic3BpY2UgZW5hYmxlZCBvciBkaXNh YmxlZCIpLAorICAgICgic3BpY2Vwb3J0IiwgICAgICAgIGludGVnZXIsICAgICAgICAgICBGYWxz ZSwgInRoZSBwb3J0IHRoYXQgc2hvdWxkIGJlIGxpc3RlbmVkIG9uIGZvciB0aGUgc3BpY2Ugc2Vy dmVyIiksCisgICAgKCJzcGljZXRsc19wb3J0IiwgICAgaW50ZWdlciwgICAgICAgICAgIEZhbHNl LCAidGhlIHRscyBwb3J0IHRoYXQgc2hvdWxkIGJlIGxpc3RlbmVkIG9uIGZvciB0aGUgc3BpY2Ug c2VydmVyLCBhdCBsZWFzdCBvbmUgb2YgdGhlIHBvcnQgb3IgdGxzIHBvcnQgbXVzdCBiZSBnaXZl biIpLAorICAgICgic3BpY2Vob3N0IiwgICAgICAgIHN0cmluZywgICAgICAgICAgICBGYWxzZSwg InRoZSBpbnRlcmZhY2UgdGhhdCBzaG91bGQgYmUgbGlzdGVuZWQgb24gaWYgZ2l2ZW4gb3RoZXJ3 aXNlIGFueSBpbnRlcmZhY2UiKSwKKyAgICAoInNwaWNlZGlzYWJsZV90aWNrZXRpbmciLCBib29s LCAgICAgICAgRmFsc2UsICJFbmFibGUgY2xpZW50IGNvbm5lY3Rpb24gd2l0aCBubyBwYXNzd29y ZCIpLAorICAgICgic3BpY2VwYXNzd2QiLCAgICAgIHN0cmluZywgICAgICAgICAgICBGYWxzZSwg InNldCB0aWNrZXQgcGFzc3dvcmQsIHdpdGNoIG11c3QgYmUgdXNlZCBieSBhIGNsaWVudCBmb3Ig Y29ubmVjdGlvbi4gVGhlIHBhc3N3b3JkcyBuZXZlciBleHBpcmVzIiksCisgICAgKCJzcGljZWFn ZW50X21vdXNlIiwgYm9vbCwgICAgICAgICAgICAgIEZhbHNlLCAiV2hldGhlciBzcGljZSBhZ2Vu dCBpcyB1c2VkIGZvciBjbGllbnQgbW91c2UgbW9kZShkZWZhdWx0IGlzIG9uKSIpLAogICAgICgi bm9ncmFwaGljIiwgICAgICAgIGJvb2wsICAgICAgICAgICAgICBGYWxzZSwgIm5vIGdyYXBoaWNz LCB1c2Ugc2VyaWFsIHBvcnQiKSwKICAgICAoImdmeF9wYXNzdGhydSIsICAgICBib29sLCAgICAg ICAgICAgICAgRmFsc2UsICJncmFwaGljcyBwYXNzdGhyb3VnaCBlbmFibGVkIG9yIGRpc2FibGVk IiksCiAgICAgKCJzZXJpYWwiLCAgICAgICAgICAgc3RyaW5nLCAgICAgICAgICAgIEZhbHNlLCAi c2VyaWFsIHBvcnQgcmUtZGlyZWN0IHRvIHB0eSBkZWl2Y2UiKSwKZGlmZiAtciAzZjAwYzVmYWEx MmEgdG9vbHMvbGlieGwvbGlieGxfZG0uYwotLS0gYS90b29scy9saWJ4bC9saWJ4bF9kbS5jCVdl ZCBBcHIgMTMgMTY6MTA6MjYgMjAxMSArMDEwMAorKysgYi90b29scy9saWJ4bC9saWJ4bF9kbS5j CVR1ZSBBcHIgMTkgMTI6MzE6MTkgMjAxMSArMDgwMApAQCAtMjM0LDYgKzIzNCw0MiBAQCBzdGF0 aWMgY2hhciAqKiBsaWJ4bF9fYnVpbGRfZGV2aWNlX21vZGVsCiAgICAgfQogICAgIGlmIChpbmZv LT5zZGwpIHsKICAgICAgICAgZmxleGFycmF5X2FwcGVuZChkbV9hcmdzLCAiLXNkbCIpOworICAg IH0KKyAgICBpZiAoaW5mby0+c3BpY2UpIHsKKyAgICAgICAgY2hhciAqc3BpY2VvcHRpb25zID0g TlVMTDsKKyAgICAgICAgaWYgKCFpbmZvLT5zcGljZXBvcnQgJiYgIWluZm8tPnNwaWNldGxzX3Bv cnQpIHsKKyAgICAgICAgICAgIExJQlhMX19MT0coY3R4LCBMSUJYTF9fTE9HX0VSUk9SLAorICAg ICAgICAgICAgICAgICAgICAgICAiOiBhdCBsZWFzdCBvbmUgb2YgdGhlIHNwaWNlcG9ydCBvciB0 bHNfcG9ydCBtdXN0IGJlIHByb3ZpZGVkIik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAg ICAgICAgfQorCisgICAgICAgIGlmICghaW5mby0+c3BpY2VkaXNhYmxlX3RpY2tldGluZykgewor ICAgICAgICAgICAgaWYgKCFpbmZvLT5zcGljZXBhc3N3ZCkgeworICAgICAgICAgICAgICAgIExJ QlhMX19MT0coY3R4LCBMSUJYTF9fTE9HX0VSUk9SLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgIjogc3BpY2UgdGlja2V0aW5nIGlzIGVuYWJsZWQgYnV0IG1pc3NpbmcgcGFzc3dvcmQiKTsK KyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAg IGVsc2UgaWYgKCFpbmZvLT5zcGljZXBhc3N3ZFswXSkgeworICAgICAgICAgICAgICAgIExJQlhM X19MT0coY3R4LCBMSUJYTF9fTE9HX0VSUk9SLCAiOiBzcGljZSBwYXNzd29yZCBjYW4ndCBiZSBl bXB0eSIpOworICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgfQorICAg ICAgICB9CisgICAgICAgIHNwaWNlb3B0aW9ucyA9IGxpYnhsX19zcHJpbnRmKGdjLCAicG9ydD0l ZCx0bHMtcG9ydD0lZCIsCisgICAgICAgICAgICAgICAgICAgICAgIGluZm8tPnNwaWNlcG9ydCwg aW5mby0+c3BpY2V0bHNfcG9ydCk7CisgICAgICAgIGlmICghaW5mby0+c3BpY2Vob3N0KQorICAg ICAgICAgICAgc3BpY2VvcHRpb25zID0gbGlieGxfX3NwcmludGYoZ2MsCisgICAgICAgICAgICAg ICAgICAgICIlcyxob3N0PSVzIiwgc3BpY2VvcHRpb25zLCBpbmZvLT5zcGljZWhvc3QpOworICAg ICAgICBpZiAoaW5mby0+c3BpY2VkaXNhYmxlX3RpY2tldGluZykKKyAgICAgICAgICAgIHNwaWNl b3B0aW9ucyA9IGxpYnhsX19zcHJpbnRmKGdjLCAiJXMsZGlzYWJsZS10aWNrZXRpbmciLCBzcGlj ZW9wdGlvbnMpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBzcGljZW9wdGlvbnMgPSBsaWJ4 bF9fc3ByaW50ZihnYywKKyAgICAgICAgICAgICAgICAgICAgIiVzLHBhc3N3b3JkPSVzIiwgc3Bp Y2VvcHRpb25zLCBpbmZvLT5zcGljZXBhc3N3ZCk7CisgICAgICAgIHNwaWNlb3B0aW9ucyA9IGxp YnhsX19zcHJpbnRmKGdjLCAiJXMsYWdlbnQtbW91c2U9JXMiLCBzcGljZW9wdGlvbnMsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZm8tPnNwaWNlYWdlbnRfbW91c2Ug PyAib24iIDogIm9mZiIpOworCisgICAgICAgIGZsZXhhcnJheV9hcHBlbmQoZG1fYXJncywgIi1z cGljZSIpOworICAgICAgICBmbGV4YXJyYXlfYXBwZW5kKGRtX2FyZ3MsIHNwaWNlb3B0aW9ucyk7 CisgICAgICAgIHByaW50ZigiU1BJQ0UgT3B0aW9uczpcbiAgLXNwaWNlICVzXG4iLCBzcGljZW9w dGlvbnMpOwogICAgIH0KIAogICAgIGlmIChpbmZvLT50eXBlID09IFhFTlBWICYmICFpbmZvLT5u b2dyYXBoaWMpIHsKZGlmZiAtciAzZjAwYzVmYWExMmEgdG9vbHMvbGlieGwveGxfY21kaW1wbC5j Ci0tLSBhL3Rvb2xzL2xpYnhsL3hsX2NtZGltcGwuYwlXZWQgQXByIDEzIDE2OjEwOjI2IDIwMTEg KzAxMDAKKysrIGIvdG9vbHMvbGlieGwveGxfY21kaW1wbC5jCVR1ZSBBcHIgMTkgMTI6MzE6MTkg MjAxMSArMDgwMApAQCAtMTA4OSw2ICsxMDg5LDIwIEBAIHNraXBfdmZiOgogICAgICAgICAgICAg ZG1faW5mby0+c2RsID0gbDsKICAgICAgICAgaWYgKCF4bHVfY2ZnX2dldF9sb25nIChjb25maWcs ICJvcGVuZ2wiLCAmbCkpCiAgICAgICAgICAgICBkbV9pbmZvLT5vcGVuZ2wgPSBsOworICAgICAg ICBpZiAoIXhsdV9jZmdfZ2V0X2xvbmcgKGNvbmZpZywgInNwaWNlIiwgJmwpKQorICAgICAgICAg ICAgZG1faW5mby0+c3BpY2UgPSBsOworICAgICAgICBpZiAoIXhsdV9jZmdfZ2V0X2xvbmcgKGNv bmZpZywgInNwaWNlcG9ydCIsICZsKSkKKyAgICAgICAgICAgIGRtX2luZm8tPnNwaWNlcG9ydCA9 IGw7CisgICAgICAgIGlmICgheGx1X2NmZ19nZXRfbG9uZyAoY29uZmlnLCAic3BpY2V0bHNfcG9y dCIsICZsKSkKKyAgICAgICAgICAgIGRtX2luZm8tPnNwaWNldGxzX3BvcnQgPSBsOworICAgICAg ICB4bHVfY2ZnX3JlcGxhY2Vfc3RyaW5nIChjb25maWcsICJzcGljZWhvc3QiLCAmZG1faW5mby0+ c3BpY2Vob3N0KTsKKyAgICAgICAgaWYgKCF4bHVfY2ZnX2dldF9sb25nIChjb25maWcsICJzcGlj ZWRpc2FibGVfdGlja2V0aW5nIiwgJmwpKQorICAgICAgICAgICAgZG1faW5mby0+c3BpY2VkaXNh YmxlX3RpY2tldGluZyA9IGw7CisgICAgICAgIHhsdV9jZmdfcmVwbGFjZV9zdHJpbmcgKGNvbmZp ZywgInNwaWNlcGFzc3dkIiwgJmRtX2luZm8tPnNwaWNlcGFzc3dkKTsKKyAgICAgICAgaWYgKCF4 bHVfY2ZnX2dldF9sb25nIChjb25maWcsICJzcGljZWFnZW50X21vdXNlIiwgJmwpKQorICAgICAg ICAgICAgZG1faW5mby0+c3BpY2VhZ2VudF9tb3VzZSA9IGw7CisgICAgICAgIGVsc2UKKyAgICAg ICAgICAgIGRtX2luZm8tPnNwaWNlYWdlbnRfbW91c2UgPSAxOwogICAgICAgICBpZiAoIXhsdV9j ZmdfZ2V0X2xvbmcgKGNvbmZpZywgIm5vZ3JhcGhpYyIsICZsKSkKICAgICAgICAgICAgIGRtX2lu Zm8tPm5vZ3JhcGhpYyA9IGw7CiAgICAgICAgIGlmICgheGx1X2NmZ19nZXRfbG9uZyAoY29uZmln LCAiZ2Z4X3Bhc3N0aHJ1IiwgJmwpKQoKCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PUFw cGVuZGVkIHBhdGNoPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K U2lnbmVkLW9mZi1ieTogWmhvdSBQZW5nIDx6aG91cGVuZ0BuZnMuaXNjYXMuYWMuY24+Cgp0b29s L2xpYnhsOiBtaXN0YWtlIGFwaWMgZm9yIGFjcGkgaW4gbGlieGxfX2J1aWxkX2RldmljZV9tb2Rl bF9hcmdzX29sZC9uZXcKSXQgbWF5IGJlIGFkdmlzZWRseSBjb2RlZCBmb3Igc29tZSByZWFzb24s IHRoZW4gaXQgY2FuIGJlIGEgbWlzdGFrZSBvZiBteSB1bmRlcnN0YW5kaW5nLgoKZGlmZiAtciA2 ODcxNDc0YTJhMDkgLXIgMDFmOGIyOWRkYThlIHRvb2xzL2xpYnhsL2xpYnhsX2RtLmMKLS0tIGEv dG9vbHMvbGlieGwvbGlieGxfZG0uYwlGcmkgQXByIDE1IDEwOjA2OjU5IDIwMTEgKzA4MDAKKysr IGIvdG9vbHMvbGlieGwvbGlieGxfZG0uYwlGcmkgQXByIDE1IDE1OjE3OjQyIDIwMTEgKzA4MDAK QEAgLTEyMCw3ICsxMjAsNyBAQCBzdGF0aWMgY2hhciAqKiBsaWJ4bF9fYnVpbGRfZGV2aWNlX21v ZGVsCiAgICAgICAgIGlmIChpbmZvLT5zb3VuZGh3KSB7CiAgICAgICAgICAgICBmbGV4YXJyYXlf dmFwcGVuZChkbV9hcmdzLCAiLXNvdW5kaHciLCBpbmZvLT5zb3VuZGh3LCBOVUxMKTsKICAgICAg ICAgfQotICAgICAgICBpZiAoaW5mby0+YXBpYykgeworICAgICAgICBpZiAoaW5mby0+YWNwaSkg ewogICAgICAgICAgICAgZmxleGFycmF5X2FwcGVuZChkbV9hcmdzLCAiLWFjcGkiKTsKICAgICAg ICAgfQogICAgICAgICBpZiAoaW5mby0+dmNwdXMgPiAxKSB7CkBAIC0yNjgsNyArMjY4LDcgQEAg c3RhdGljIGNoYXIgKiogbGlieGxfX2J1aWxkX2RldmljZV9tb2RlbAogICAgICAgICBpZiAoaW5m by0+c291bmRodykgewogICAgICAgICAgICAgZmxleGFycmF5X3ZhcHBlbmQoZG1fYXJncywgIi1z b3VuZGh3IiwgaW5mby0+c291bmRodywgTlVMTCk7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKCFp bmZvLT5hcGljKSB7CisgICAgICAgIGlmICghaW5mby0+YWNwaSkgewogICAgICAgICAgICAgZmxl eGFycmF5X2FwcGVuZChkbV9hcmdzLCAiLW5vLWFjcGkiKTsKICAgICAgICAgfQogICAgICAgICBp ZiAoaW5mby0+dmNwdXMgPiAxKSB7Cgo= --bcaec544eee26e1c4404a13e2fb1 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --bcaec544eee26e1c4404a13e2fb1--