From mboxrd@z Thu Jan 1 00:00:00 1970 From: Keir Fraser Subject: Re: [PATCH] nestedhvm: ASID emulation Date: Thu, 14 Apr 2011 15:43:55 +0100 Message-ID: References: <4DA6FE54.2050403@amd.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="B_3385640642_99482106" Return-path: In-Reply-To: <4DA6FE54.2050403@amd.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Christoph Egger Cc: "xen-devel@lists.xensource.com" List-Id: xen-devel@lists.xenproject.org > This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. --B_3385640642_99482106 Content-type: text/plain; charset="US-ASCII" Content-transfer-encoding: 7bit On 14/04/2011 15:01, "Christoph Egger" wrote: >> What if some other vcpu's nv_n1asid or nv_n2asid got assigned the same HW >> asid in this generation as this vcpu's (now stale, as it's from a previous >> generation's) nv_n2asid? This PCPU can be interleaving execution of other >> HVM VCPUs after all. > > I am not sure if I got you right. You mean what if two vcpus run on one > physical cpu? In this case svm_do_resume() calls hvm_asid_flush_vcpu() > before so that asid_generation and core_asid_generation do not match and > a new asid is always assigned. No, it only does that if a given VCPU gets scheduled onto a *different* PCPU than last time it ran. I've attached a mostly rewritten version of your patch that is about half the size and I believe has a fighting chance of being correct (however it is only build tested). Give it a look and a spin. -- Keir > Christoph --B_3385640642_99482106 Content-type: application/octet-stream; name="00-nhvm-asid" Content-disposition: attachment; filename="00-nhvm-asid" Content-transfer-encoding: base64 ZGlmZiAtciBiNTE2NWZiNjZiNTYgeGVuL2FyY2gveDg2L2h2bS9hc2lkLmMKLS0tIGEveGVu L2FyY2gveDg2L2h2bS9hc2lkLmMJVGh1IEFwciAxNCAxNDo1NzoyNCAyMDExICswMTAwCisr KyBiL3hlbi9hcmNoL3g4Ni9odm0vYXNpZC5jCVRodSBBcHIgMTQgMTU6NDA6NDggMjAxMSAr MDEwMApAQCAtNzgsOSArNzgsMTUgQEAKICAgICBkYXRhLT5uZXh0X2FzaWQgPSAxOwogfQog Cit2b2lkIGh2bV9hc2lkX2ZsdXNoX3ZjcHVfYXNpZChzdHJ1Y3QgaHZtX3ZjcHVfYXNpZCAq YXNpZCkKK3sKKyAgICBhc2lkLT5nZW5lcmF0aW9uID0gMDsKK30KKwogdm9pZCBodm1fYXNp ZF9mbHVzaF92Y3B1KHN0cnVjdCB2Y3B1ICp2KQogewotICAgIHYtPmFyY2guaHZtX3ZjcHUu YXNpZF9nZW5lcmF0aW9uID0gMDsKKyAgICBodm1fYXNpZF9mbHVzaF92Y3B1X2FzaWQoJnYt PmFyY2guaHZtX3ZjcHUubjFfYXNpZCk7CisgICAgaHZtX2FzaWRfZmx1c2hfdmNwdV9hc2lk KCZ2LT5hcmNoLmh2bV92Y3B1Lm4yX2FzaWQpOwogfQogCiB2b2lkIGh2bV9hc2lkX2ZsdXNo X2NvcmUodm9pZCkKQEAgLTEwMiw5ICsxMDgsOCBAQAogICAgIGRhdGEtPmRpc2FibGVkID0g MTsKIH0KIAotYm9vbF90IGh2bV9hc2lkX2hhbmRsZV92bWVudGVyKHZvaWQpCitib29sX3Qg aHZtX2FzaWRfaGFuZGxlX3ZtZW50ZXIoc3RydWN0IGh2bV92Y3B1X2FzaWQgKmFzaWQpCiB7 Ci0gICAgc3RydWN0IHZjcHUgKmN1cnIgPSBjdXJyZW50OwogICAgIHN0cnVjdCBodm1fYXNp ZF9kYXRhICpkYXRhID0gJnRoaXNfY3B1KGh2bV9hc2lkX2RhdGEpOwogCiAgICAgLyogT24g ZXJyYXR1bSAjMTcwIHN5c3RlbXMgd2UgbXVzdCBmbHVzaCB0aGUgVExCLiAKQEAgLTExMyw3 ICsxMTgsNyBAQAogICAgICAgICBnb3RvIGRpc2FibGVkOwogCiAgICAgLyogVGVzdCBpZiBW Q1BVIGhhcyB2YWxpZCBBU0lELiAqLwotICAgIGlmICggY3Vyci0+YXJjaC5odm1fdmNwdS5h c2lkX2dlbmVyYXRpb24gPT0gZGF0YS0+Y29yZV9hc2lkX2dlbmVyYXRpb24gKQorICAgIGlm ICggYXNpZC0+Z2VuZXJhdGlvbiA9PSBkYXRhLT5jb3JlX2FzaWRfZ2VuZXJhdGlvbiApCiAg ICAgICAgIHJldHVybiAwOwogCiAgICAgLyogSWYgdGhlcmUgYXJlIG5vIGZyZWUgQVNJRHMs IG5lZWQgdG8gZ28gdG8gYSBuZXcgZ2VuZXJhdGlvbiAqLwpAQCAtMTI2LDE3ICsxMzEsMTcg QEAKICAgICB9CiAKICAgICAvKiBOb3cgZ3VhcmFudGVlZCB0byBiZSBhIGZyZWUgQVNJRC4g Ki8KLSAgICBjdXJyLT5hcmNoLmh2bV92Y3B1LmFzaWQgPSBkYXRhLT5uZXh0X2FzaWQrKzsK LSAgICBjdXJyLT5hcmNoLmh2bV92Y3B1LmFzaWRfZ2VuZXJhdGlvbiA9IGRhdGEtPmNvcmVf YXNpZF9nZW5lcmF0aW9uOworICAgIGFzaWQtPmFzaWQgPSBkYXRhLT5uZXh0X2FzaWQrKzsK KyAgICBhc2lkLT5nZW5lcmF0aW9uID0gZGF0YS0+Y29yZV9hc2lkX2dlbmVyYXRpb247CiAK ICAgICAvKgogICAgICAqIFdoZW4gd2UgYXNzaWduIEFTSUQgMSwgZmx1c2ggYWxsIFRMQiBl bnRyaWVzIGFzIHdlIGFyZSBzdGFydGluZyBhIG5ldwogICAgICAqIGdlbmVyYXRpb24sIGFu ZCBhbGwgb2xkIEFTSUQgYWxsb2NhdGlvbnMgYXJlIG5vdyBzdGFsZS4gCiAgICAgICovCi0g ICAgcmV0dXJuIChjdXJyLT5hcmNoLmh2bV92Y3B1LmFzaWQgPT0gMSk7CisgICAgcmV0dXJu IChhc2lkLT5hc2lkID09IDEpOwogCiAgZGlzYWJsZWQ6Ci0gICAgY3Vyci0+YXJjaC5odm1f dmNwdS5hc2lkID0gMDsKKyAgICBhc2lkLT5hc2lkID0gMDsKICAgICByZXR1cm4gMDsKIH0K IApkaWZmIC1yIGI1MTY1ZmI2NmI1NiB4ZW4vYXJjaC94ODYvaHZtL3N2bS9hc2lkLmMKLS0t IGEveGVuL2FyY2gveDg2L2h2bS9zdm0vYXNpZC5jCVRodSBBcHIgMTQgMTQ6NTc6MjQgMjAx MSArMDEwMAorKysgYi94ZW4vYXJjaC94ODYvaHZtL3N2bS9hc2lkLmMJVGh1IEFwciAxNCAx NTo0MDo0OCAyMDExICswMTAwCkBAIC0yMiw2ICsyMiw3IEBACiAjaW5jbHVkZSA8eGVuL3Bl cmZjLmg+CiAjaW5jbHVkZSA8YXNtL2h2bS9zdm0vYXNpZC5oPgogI2luY2x1ZGUgPGFzbS9h bWQuaD4KKyNpbmNsdWRlIDxhc20vaHZtL25lc3RlZGh2bS5oPgogCiB2b2lkIHN2bV9hc2lk X2luaXQoc3RydWN0IGNwdWluZm9feDg2ICpjKQogewpAQCAtNDIsMTcgKzQzLDIwIEBACiB7 CiAgICAgc3RydWN0IHZjcHUgKmN1cnIgPSBjdXJyZW50OwogICAgIHN0cnVjdCB2bWNiX3N0 cnVjdCAqdm1jYiA9IGN1cnItPmFyY2guaHZtX3N2bS52bWNiOwotICAgIGJvb2xfdCBuZWVk X2ZsdXNoID0gaHZtX2FzaWRfaGFuZGxlX3ZtZW50ZXIoKTsKKyAgICBzdHJ1Y3QgaHZtX3Zj cHVfYXNpZCAqY3Vycl9hc2lkID0KKyAgICAgICAgbmVzdGVkaHZtX3ZjcHVfaW5fZ3Vlc3Rt b2RlKGN1cnIpCisgICAgICAgID8gJmN1cnItPmFyY2guaHZtX3ZjcHUubjFfYXNpZCA6ICZj dXJyLT5hcmNoLmh2bV92Y3B1Lm4yX2FzaWQ7CisgICAgYm9vbF90IG5lZWRfZmx1c2ggPSBo dm1fYXNpZF9oYW5kbGVfdm1lbnRlcihjdXJyX2FzaWQpOwogCiAgICAgLyogQVNJRCAwIGlu ZGljYXRlcyB0aGF0IEFTSURzIGFyZSBkaXNhYmxlZC4gKi8KLSAgICBpZiAoIGN1cnItPmFy Y2guaHZtX3ZjcHUuYXNpZCA9PSAwICkKKyAgICBpZiAoIGN1cnJfYXNpZC0+YXNpZCA9PSAw ICkKICAgICB7CiAgICAgICAgIHZtY2Jfc2V0X2d1ZXN0X2FzaWQodm1jYiwgMSk7CiAgICAg ICAgIHZtY2ItPnRsYl9jb250cm9sID0gMTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAot ICAgIHZtY2Jfc2V0X2d1ZXN0X2FzaWQodm1jYiwgY3Vyci0+YXJjaC5odm1fdmNwdS5hc2lk KTsKKyAgICB2bWNiX3NldF9ndWVzdF9hc2lkKHZtY2IsIGN1cnJfYXNpZC0+YXNpZCk7CiAg ICAgdm1jYi0+dGxiX2NvbnRyb2wgPSBuZWVkX2ZsdXNoOwogfQogCmRpZmYgLXIgYjUxNjVm YjY2YjU2IHhlbi9hcmNoL3g4Ni9odm0vc3ZtL25lc3RlZHN2bS5jCi0tLSBhL3hlbi9hcmNo L3g4Ni9odm0vc3ZtL25lc3RlZHN2bS5jCVRodSBBcHIgMTQgMTQ6NTc6MjQgMjAxMSArMDEw MAorKysgYi94ZW4vYXJjaC94ODYvaHZtL3N2bS9uZXN0ZWRzdm0uYwlUaHUgQXByIDE0IDE1 OjQwOjQ4IDIwMTEgKzAxMDAKQEAgLTI2MSw4ICsyNjEsNiBAQAogICAgIC8qIENsZWFuYml0 cyAqLwogICAgIG4xdm1jYi0+Y2xlYW5iaXRzLmJ5dGVzID0gMDsKIAotICAgIGh2bV9hc2lk X2ZsdXNoX3ZjcHUodik7Ci0KICAgICByZXR1cm4gMDsKIH0KIApAQCAtNDA4LDkgKzQwNiw3 IEBACiAgICAgaWYgKHJjKQogICAgICAgICByZXR1cm4gcmM7CiAKLSAgICAvKiBBU0lEICov Ci0gICAgaHZtX2FzaWRfZmx1c2hfdmNwdSh2KTsKLSAgICAvKiBuMnZtY2ItPl9ndWVzdF9h c2lkID0gbnNfdm1jYi0+X2d1ZXN0X2FzaWQ7ICovCisgICAgLyogQVNJRCAtIEVtdWxhdGlv biBoYW5kbGVkIGluIGh2bV9hc2lkX2hhbmRsZV92bWVudGVyKCkgKi8KIAogICAgIC8qIFRM QiBjb250cm9sICovCiAgICAgbjJ2bWNiLT50bGJfY29udHJvbCA9IG4xdm1jYi0+dGxiX2Nv bnRyb2wgfCBuc192bWNiLT50bGJfY29udHJvbDsKQEAgLTYwNSw5ICs2MDEsMTMgQEAKICAg ICBzdm0tPm5zX3ZtY2JfZ3Vlc3RjcjMgPSBuc192bWNiLT5fY3IzOwogICAgIHN2bS0+bnNf dm1jYl9ob3N0Y3IzID0gbnNfdm1jYi0+X2hfY3IzOwogCi0gICAgbnYtPm52X2ZsdXNocDJt ID0gKG5zX3ZtY2ItPnRsYl9jb250cm9sCi0gICAgICAgIHx8IChzdm0tPm5zX2d1ZXN0X2Fz aWQgIT0gbnNfdm1jYi0+X2d1ZXN0X2FzaWQpKTsKLSAgICBzdm0tPm5zX2d1ZXN0X2FzaWQg PSBuc192bWNiLT5fZ3Vlc3RfYXNpZDsKKyAgICBudi0+bnZfZmx1c2hwMm0gPSBuc192bWNi LT50bGJfY29udHJvbDsKKyAgICBpZiAoIHN2bS0+bnNfZ3Vlc3RfYXNpZCAhPSBuc192bWNi LT5fZ3Vlc3RfYXNpZCApCisgICAgeworICAgICAgICBudi0+bnZfZmx1c2hwMm0gPSAxOwor ICAgICAgICBodm1fYXNpZF9mbHVzaF92Y3B1X2FzaWQoJnYtPmFyY2guaHZtX3ZjcHUubjJf YXNpZCk7CisgICAgICAgIHN2bS0+bnNfZ3Vlc3RfYXNpZCA9IG5zX3ZtY2ItPl9ndWVzdF9h c2lkOworICAgIH0KIAogICAgIC8qIG5lc3RlZCBwYWdpbmcgZm9yIHRoZSBndWVzdCAqLwog ICAgIHN2bS0+bnNfaGFwX2VuYWJsZWQgPSAobnNfdm1jYi0+X25wX2VuYWJsZSkgPyAxIDog MDsKZGlmZiAtciBiNTE2NWZiNjZiNTYgeGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmMKLS0t IGEveGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmMJVGh1IEFwciAxNCAxNDo1NzoyNCAyMDEx ICswMTAwCisrKyBiL3hlbi9hcmNoL3g4Ni9odm0vc3ZtL3N2bS5jCVRodSBBcHIgMTQgMTU6 NDA6NDggMjAxMSArMDEwMApAQCAtMTU4MCw2ICsxNTgwLDE1IEBACiAgICAgX191cGRhdGVf Z3Vlc3RfZWlwKHJlZ3MsIGluc3RfbGVuKTsKIH0KIAorc3RhdGljIHZvaWQgc3ZtX2ludmxw Z2FfaW50ZXJjZXB0KAorICAgIHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25nIHZhZGRy LCB1aW50MzJfdCBhc2lkKQoreworICAgIHN2bV9pbnZscGdhKHZhZGRyLAorICAgICAgICAg ICAgICAgIChhc2lkID09IDApCisgICAgICAgICAgICAgICAgPyB2LT5hcmNoLmh2bV92Y3B1 Lm4xX2FzaWQuYXNpZAorICAgICAgICAgICAgICAgIDogdi0+YXJjaC5odm1fdmNwdS5uMl9h c2lkLmFzaWQpOworfQorCiBzdGF0aWMgdm9pZCBzdm1faW52bHBnX2ludGVyY2VwdCh1bnNp Z25lZCBsb25nIHZhZGRyKQogewogICAgIHN0cnVjdCB2Y3B1ICpjdXJyID0gY3VycmVudDsK QEAgLTE4OTQsMTEgKzE5MDMsMTQgQEAKICAgICBjYXNlIFZNRVhJVF9DUjBfUkVBRCAuLi4g Vk1FWElUX0NSMTVfUkVBRDoKICAgICBjYXNlIFZNRVhJVF9DUjBfV1JJVEUgLi4uIFZNRVhJ VF9DUjE1X1dSSVRFOgogICAgIGNhc2UgVk1FWElUX0lOVkxQRzoKLSAgICBjYXNlIFZNRVhJ VF9JTlZMUEdBOgogICAgICAgICBpZiAoICFoYW5kbGVfbW1pbygpICkKICAgICAgICAgICAg IGh2bV9pbmplY3RfZXhjZXB0aW9uKFRSQVBfZ3BfZmF1bHQsIDAsIDApOwogICAgICAgICBi cmVhazsKIAorICAgIGNhc2UgVk1FWElUX0lOVkxQR0E6CisgICAgICAgIHN2bV9pbnZscGdh X2ludGVyY2VwdCh2LCByZWdzLT5yYXgsIHJlZ3MtPmVjeCk7CisgICAgICAgIGJyZWFrOwor CiAgICAgY2FzZSBWTUVYSVRfVk1NQ0FMTDoKICAgICAgICAgaWYgKCAoaW5zdF9sZW4gPSBf X2dldF9pbnN0cnVjdGlvbl9sZW5ndGgodiwgSU5TVFJfVk1DQUxMKSkgPT0gMCApCiAgICAg ICAgICAgICBicmVhazsKZGlmZiAtciBiNTE2NWZiNjZiNTYgeGVuL2FyY2gveDg2L2h2bS92 bXgvdm1jcy5jCi0tLSBhL3hlbi9hcmNoL3g4Ni9odm0vdm14L3ZtY3MuYwlUaHUgQXByIDE0 IDE0OjU3OjI0IDIwMTEgKzAxMDAKKysrIGIveGVuL2FyY2gveDg2L2h2bS92bXgvdm1jcy5j CVRodSBBcHIgMTQgMTU6NDA6NDggMjAxMSArMDEwMApAQCAtODY3LDkgKzg2Nyw2IEBACiAj ZW5kaWYKICAgICB9CiAKLSAgICBpZiAoIGNwdV9oYXNfdm14X3ZwaWQgKQotICAgICAgICBf X3Ztd3JpdGUoVklSVFVBTF9QUk9DRVNTT1JfSUQsIHYtPmFyY2guaHZtX3ZjcHUuYXNpZCk7 Ci0KICAgICBpZiAoIGNwdV9oYXNfdm14X3BhdCAmJiBwYWdpbmdfbW9kZV9oYXAoZCkgKQog ICAgIHsKICAgICAgICAgdTY0IGhvc3RfcGF0LCBndWVzdF9wYXQ7CmRpZmYgLXIgYjUxNjVm YjY2YjU2IHhlbi9hcmNoL3g4Ni9odm0vdm14L3ZteC5jCi0tLSBhL3hlbi9hcmNoL3g4Ni9o dm0vdm14L3ZteC5jCVRodSBBcHIgMTQgMTQ6NTc6MjQgMjAxMSArMDEwMAorKysgYi94ZW4v YXJjaC94ODYvaHZtL3ZteC92bXguYwlUaHUgQXByIDE0IDE1OjQwOjQ4IDIwMTEgKzAxMDAK QEAgLTI2NjcsMTQgKzI2NjcsMTYgQEAKIHsKICAgICBzdHJ1Y3QgdmNwdSAqY3VyciA9IGN1 cnJlbnQ7CiAgICAgdTMyIG5ld19hc2lkLCBvbGRfYXNpZDsKKyAgICBzdHJ1Y3QgaHZtX3Zj cHVfYXNpZCAqY3Vycl9hc2lkOwogICAgIGJvb2xfdCBuZWVkX2ZsdXNoOwogCiAgICAgaWYg KCAhY3B1X2hhc192bXhfdnBpZCApCiAgICAgICAgIGdvdG8gb3V0OwogCi0gICAgb2xkX2Fz aWQgPSBjdXJyLT5hcmNoLmh2bV92Y3B1LmFzaWQ7Ci0gICAgbmVlZF9mbHVzaCA9IGh2bV9h c2lkX2hhbmRsZV92bWVudGVyKCk7Ci0gICAgbmV3X2FzaWQgPSBjdXJyLT5hcmNoLmh2bV92 Y3B1LmFzaWQ7CisgICAgY3Vycl9hc2lkID0gJmN1cnItPmFyY2guaHZtX3ZjcHUubjFfYXNp ZDsKKyAgICBvbGRfYXNpZCA9IGN1cnJfYXNpZC0+YXNpZDsKKyAgICBuZWVkX2ZsdXNoID0g aHZtX2FzaWRfaGFuZGxlX3ZtZW50ZXIoY3Vycl9hc2lkKTsKKyAgICBuZXdfYXNpZCA9IGN1 cnJfYXNpZC0+YXNpZDsKIAogICAgIGlmICggdW5saWtlbHkobmV3X2FzaWQgIT0gb2xkX2Fz aWQpICkKICAgICB7CmRpZmYgLXIgYjUxNjVmYjY2YjU2IHhlbi9pbmNsdWRlL2FzbS14ODYv aHZtL2FzaWQuaAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2h2bS9hc2lkLmgJVGh1IEFw ciAxNCAxNDo1NzoyNCAyMDExICswMTAwCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZt L2FzaWQuaAlUaHUgQXByIDE0IDE1OjQwOjQ4IDIwMTEgKzAxMDAKQEAgLTIzLDExICsyMywx NSBAQAogI2luY2x1ZGUgPHhlbi9jb25maWcuaD4KIAogc3RydWN0IHZjcHU7CitzdHJ1Y3Qg aHZtX3ZjcHVfYXNpZDsKIAogLyogSW5pdGlhbGlzZSBBU0lEIG1hbmFnZW1lbnQgZm9yIHRo ZSBjdXJyZW50IHBoeXNpY2FsIENQVS4gKi8KIHZvaWQgaHZtX2FzaWRfaW5pdChpbnQgbmFz aWRzKTsKIAotLyogSW52YWxpZGF0ZSBhIFZDUFUncyBjdXJyZW50IEFTSUQgYWxsb2NhdGlv bjogZm9yY2VzIHJlLWFsbG9jYXRpb24uICovCisvKiBJbnZhbGlkYXRlIGEgcGFydGljdWxh ciBBU0lEIGFsbG9jYXRpb246IGZvcmNlcyByZS1hbGxvY2F0aW9uLiAqLwordm9pZCBodm1f YXNpZF9mbHVzaF92Y3B1X2FzaWQoc3RydWN0IGh2bV92Y3B1X2FzaWQgKmFzaWQpOworCisv KiBJbnZhbGlkYXRlIGFsbCBBU0lEIGFsbG9jYXRpb25zIGZvciBzcGVjaWZpZWQgVkNQVTog Zm9yY2VzIHJlLWFsbG9jYXRpb24uICovCiB2b2lkIGh2bV9hc2lkX2ZsdXNoX3ZjcHUoc3Ry dWN0IHZjcHUgKnYpOwogCiAvKiBGbHVzaCBhbGwgQVNJRHMgb24gdGhpcyBwcm9jZXNzb3Ig Y29yZS4gKi8KQEAgLTM1LDcgKzM5LDcgQEAKIAogLyogQ2FsbGVkIGJlZm9yZSBlbnRyeSB0 byBndWVzdCBjb250ZXh0LiBDaGVja3MgQVNJRCBhbGxvY2F0aW9uLCByZXR1cm5zIGEKICAq IGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIGFsbCBBU0lEcyBtdXN0IGJlIGZsdXNoZWQu ICovCi1ib29sX3QgaHZtX2FzaWRfaGFuZGxlX3ZtZW50ZXIodm9pZCk7Citib29sX3QgaHZt X2FzaWRfaGFuZGxlX3ZtZW50ZXIoc3RydWN0IGh2bV92Y3B1X2FzaWQgKmFzaWQpOwogCiAj ZW5kaWYgLyogX19BU01fWDg2X0hWTV9BU0lEX0hfXyAqLwogCmRpZmYgLXIgYjUxNjVmYjY2 YjU2IHhlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3ZjcHUuaAotLS0gYS94ZW4vaW5jbHVkZS9h c20teDg2L2h2bS92Y3B1LmgJVGh1IEFwciAxNCAxNDo1NzoyNCAyMDExICswMTAwCisrKyBi L3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3ZjcHUuaAlUaHUgQXByIDE0IDE1OjQwOjQ4IDIw MTEgKzAxMDAKQEAgLTcwLDYgKzcwLDExIEBACiAKICNkZWZpbmUgdmNwdV9uZXN0ZWRodm0o dikgKCh2KS0+YXJjaC5odm1fdmNwdS5udmNwdSkKIAorc3RydWN0IGh2bV92Y3B1X2FzaWQg eworICAgIHVpbnQ2NF90IGdlbmVyYXRpb247CisgICAgdWludDMyX3QgYXNpZDsKK307CisK IHN0cnVjdCBodm1fdmNwdSB7CiAgICAgLyogR3Vlc3QgY29udHJvbC1yZWdpc3RlciBhbmQg RUZFUiB2YWx1ZXMsIGp1c3QgYXMgdGhlIGd1ZXN0IHNlZXMgdGhlbS4gKi8KICAgICB1bnNp Z25lZCBsb25nICAgICAgIGd1ZXN0X2NyWzVdOwpAQCAtMTAwLDggKzEwNSw3IEBACiAgICAg Ym9vbF90ICAgICAgICAgICAgICBoY2FsbF9wcmVlbXB0ZWQ7CiAgICAgYm9vbF90ICAgICAg ICAgICAgICBoY2FsbF82NGJpdDsKIAotICAgIHVpbnQ2NF90ICAgICAgICAgICAgYXNpZF9n ZW5lcmF0aW9uOwotICAgIHVpbnQzMl90ICAgICAgICAgICAgYXNpZDsKKyAgICBzdHJ1Y3Qg aHZtX3ZjcHVfYXNpZCBuMV9hc2lkLCBuMl9hc2lkOwogCiAgICAgdTMyICAgICAgICAgICAg ICAgICBtc3JfdHNjX2F1eDsKIApkaWZmIC1yIGI1MTY1ZmI2NmI1NiB4ZW4vaW5jbHVkZS9h c20teDg2L2h2bS92bXgvdm14LmgKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vdm14 L3ZteC5oCVRodSBBcHIgMTQgMTQ6NTc6MjQgMjAxMSArMDEwMAorKysgYi94ZW4vaW5jbHVk ZS9hc20teDg2L2h2bS92bXgvdm14LmgJVGh1IEFwciAxNCAxNTo0MDo0OCAyMDExICswMTAw CkBAIC0zNzcsNyArMzc3LDcgQEAKICAgICAgICAgdHlwZSA9IElOVlZQSURfQUxMX0NPTlRF WFQ7CiAKIGV4ZWN1dGVfaW52dnBpZDoKLSAgICBfX2ludnZwaWQodHlwZSwgdi0+YXJjaC5o dm1fdmNwdS5hc2lkLCAodTY0KWd2YSk7CisgICAgX19pbnZ2cGlkKHR5cGUsIHYtPmFyY2gu aHZtX3ZjcHUubjFfYXNpZC5hc2lkLCAodTY0KWd2YSk7CiB9CiAKIHN0YXRpYyBpbmxpbmUg dm9pZCB2cGlkX3N5bmNfYWxsKHZvaWQpCg== --B_3385640642_99482106 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 --B_3385640642_99482106--