From: Xin Li Subject: [PATCH v5 3/3] xen/xsm: Add new SILO mode for XSM Date: Tue, 9 Oct 2018 17:33:20 +0800 Message-ID: <20181009093320.24003-3-xin.li@citrix.com> References: <20181009093320.24003-1-xin.li@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20181009093320.24003-1-xin.li@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: Sergey Dyasli , Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Xin Li , Tim Deegan , Jan Beulich , Andrew Cooper , Ming Lu , Daniel De Graaf List-Id: xen-devel@lists.xenproject.org V2hlbiBTSUxPIGlzIGVuYWJsZWQsIHRoZXJlIHdvdWxkIGJlIG5vIHBhZ2Utc2hhcmluZyBvciBl dmVudCBub3RpZmljYXRpb25zCmJldHdlZW4gdW5wcml2aWxlZ2VkIFZNcyAobm8gZ3JhbnQgdGFi bGVzIG9yIGV2ZW50IGNoYW5uZWxzKS4KClNpZ25lZC1vZmYtYnk6IFhpbiBMaSA8eGluLmxpQGNp dHJpeC5jb20+CkFja2VkLWJ5OiBEYW5pZWwgRGUgR3JhYWYgPGRnZGVncmFAdHljaG8ubnNhLmdv dj4KCi0tLQpDQzogRGFuaWVsIERlIEdyYWFmIDxkZ2RlZ3JhQHR5Y2hvLm5zYS5nb3Y+CkNDOiBH ZW9yZ2UgRHVubGFwIDxHZW9yZ2UuRHVubGFwQGV1LmNpdHJpeC5jb20+CkNDOiBKYW4gQmV1bGlj aCA8SkJldWxpY2hAc3VzZS5jb20+CkNDOiBLb25yYWQgUnplc3p1dGVrIFdpbGsgPGtvbnJhZC53 aWxrQG9yYWNsZS5jb20+CkNDOiBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5l bC5vcmc+CkNDOiBUaW0gRGVlZ2FuIDx0aW1AeGVuLm9yZz4KQ0M6IFdlaSBMaXUgPHdlaS5saXUy QGNpdHJpeC5jb20+CkNDOiBTZXJnZXkgRHlhc2xpIDxzZXJnZXkuZHlhc2xpQGNpdHJpeC5jb20+ CkNDOiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPgpDQzogTWluZyBM dSA8bWluZy5sdUBjaXRyaXguY29tPgoKdjU6CjEuIHVzZSBfX21heWJlX3VudXNlZCBpbnN0ZWFk IG9mIF9fYXR0cmlidXRlX18gKCh1bnVzZWQpKSwgYW5kIHJlbW92ZQp1bm5lY2Vzc2FyeSAjaWZk ZWYgQ09ORklHX1hTTV9TSUxPLgoyLiByZW5hbWUgY3VyX2RvbSB0byBjdXJyZC4KMy4gbW92ZSB0 aGUgcmVtb3ZhbCBvZiAjZGVmaW5lIGluIGR1bW15LmMgdG8gYSBzZXBlcmF0ZSBwYXRjaC4KNC4g cmVtb3ZlIGEgYmxhbmsgbGluZSBpbiBzaWxvLmMuCgotLS0KIGRvY3MvbWlzYy94ZW4tY29tbWFu ZC1saW5lLm1hcmtkb3duIHwgICA1ICstCiB4ZW4vY29tbW9uL0tjb25maWcgICAgICAgICAgICAg ICAgICB8ICAxNSArKysrCiB4ZW4vaW5jbHVkZS94c20vZHVtbXkuaCAgICAgICAgICAgICB8ICAg MyArLQogeGVuL2luY2x1ZGUveHNtL3hzbS5oICAgICAgICAgICAgICAgfCAgIDYgKysKIHhlbi94 c20vTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgIHwgICAxICsKIHhlbi94c20vc2lsby5jICAg ICAgICAgICAgICAgICAgICAgIHwgMTA4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysKIHhl bi94c20veHNtX2NvcmUuYyAgICAgICAgICAgICAgICAgIHwgIDExICsrKwogNyBmaWxlcyBjaGFu Z2VkLCAxNDcgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0 NCB4ZW4veHNtL3NpbG8uYwoKZGlmZiAtLWdpdCBhL2RvY3MvbWlzYy94ZW4tY29tbWFuZC1saW5l Lm1hcmtkb3duIGIvZG9jcy9taXNjL3hlbi1jb21tYW5kLWxpbmUubWFya2Rvd24KaW5kZXggNjdl MDYyZWNkNy4uMmM3MDQ2ZWI4NiAxMDA2NDQKLS0tIGEvZG9jcy9taXNjL3hlbi1jb21tYW5kLWxp bmUubWFya2Rvd24KKysrIGIvZG9jcy9taXNjL3hlbi1jb21tYW5kLWxpbmUubWFya2Rvd24KQEAg LTkwMCw3ICs5MDAsNyBAQCBOb3RlIHRoYXQgc3BlY2lmeWluZyB6ZXJvIGFzIGRvbVUgdmFsdWUg bWVhbnMgemVybywgd2hpbGUgZm9yIGRvbTAgaXQgbWVhbnMKIHRvIHVzZSB0aGUgZGVmYXVsdC4K IAogIyMjIHhzbQotPiBgPSBkdW1teSB8IGZsYXNrYAorPiBgPSBkdW1teSB8IGZsYXNrIHwgc2ls b2AKIAogPiBEZWZhdWx0OiBgZHVtbXlgCiAKQEAgLTkxMSw2ICs5MTEsOSBAQCB0aGUgaHlwZXJ2 aXNvciB3YXMgY29tcGlsZWQgd2l0aCBYU00gc3VwcG9ydC4KICAgKHRoZSBkdW1teSBtb2R1bGUp IHdpbGwgYmUgYXBwbGllZC4gIEl0J3MgYWxzbyB1c2VkIHdoZW4gWFNNIGlzIGNvbXBpbGVkIG91 dC4KICogYGZsYXNrYDogdGhpcyBpcyB0aGUgcG9saWN5IGJhc2VkIGFjY2VzcyBjb250cm9sLiAg VG8gY2hvb3NlIHRoaXMsIHRoZQogICBzZXBhcmF0ZWQgb3B0aW9uIGluIGtjb25maWcgbXVzdCBh bHNvIGJlIGVuYWJsZWQuCisqIGBzaWxvYDogdGhpcyB3aWxsIGRlbnkgYW55IHVubWVkaWF0ZWQg Y29tbXVuaWNhdGlvbiBjaGFubmVscyBiZXR3ZWVuCisgIHVucHJpdmlsZWdlZCBWTXMuICBUbyBj aG9vc2UgdGhpcywgdGhlIHNlcGFyYXRlZCBvcHRpb24gaW4ga2NvbmZpZyBtdXN0IGFsc28KKyAg YmUgZW5hYmxlZC4KIAogIyMjIGZsYXNrCiA+IGA9IHBlcm1pc3NpdmUgfCBlbmZvcmNpbmcgfCBs YXRlIHwgZGlzYWJsZWRgCmRpZmYgLS1naXQgYS94ZW4vY29tbW9uL0tjb25maWcgYi94ZW4vY29t bW9uL0tjb25maWcKaW5kZXggZjgwMmVmYjYyNS4uY2U5NjVmYmYxNyAxMDA2NDQKLS0tIGEveGVu L2NvbW1vbi9LY29uZmlnCisrKyBiL3hlbi9jb21tb24vS2NvbmZpZwpAQCAtMTU0LDE1ICsxNTQs MzAgQEAgY29uZmlnIFhTTV9GTEFTS19QT0xJQ1kKIAogCSAgSWYgdW5zdXJlLCBzYXkgWS4KIAor Y29uZmlnIFhTTV9TSUxPCisJZGVmX2Jvb2wgeQorCXByb21wdCAiU0lMTyBzdXBwb3J0IgorCWRl cGVuZHMgb24gWFNNCisJLS0taGVscC0tLQorCSAgRW5hYmxlcyBTSUxPIGFzIHRoZSBhY2Nlc3Mg Y29udHJvbCBtZWNoYW5pc20gdXNlZCBieSB0aGUgWFNNIGZyYW1ld29yay4KKwkgIFRoaXMgaXMg bm90IHRoZSBkZWZhdWx0IG1vZHVsZSwgYWRkIGJvb3QgcGFyYW1ldGVyIHhzbT1zaWxvIHRvIGNo b29zZQorCSAgaXQuIFRoaXMgd2lsbCBkZW55IGFueSB1bm1lZGlhdGVkIGNvbW11bmljYXRpb24g Y2hhbm5lbHMgKGdyYW50IHRhYmxlcworCSAgYW5kIGV2ZW50IGNoYW5uZWxzKSBiZXR3ZWVuIHVu cHJpdmlsZWdlZCBWTXMuCisKKwkgIElmIHVuc3VyZSwgc2F5IFkuCisKIGNob2ljZQogCXByb21w dCAiRGVmYXVsdCBYU00gaW1wbGVtZW50YXRpb24iCiAJZGVwZW5kcyBvbiBYU00KIAlkZWZhdWx0 IFhTTV9GTEFTS19ERUZBVUxUIGlmIFhTTV9GTEFTSworCWRlZmF1bHQgWFNNX1NJTE9fREVGQVVM VCBpZiBYU01fU0lMTwogCWRlZmF1bHQgWFNNX0RVTU1ZX0RFRkFVTFQKIAljb25maWcgWFNNX0RV TU1ZX0RFRkFVTFQKIAkJYm9vbCAiTWF0Y2ggbm9uLVhTTSBiZWhhdmlvciIKIAljb25maWcgWFNN X0ZMQVNLX0RFRkFVTFQKIAkJYm9vbCAiRkx1eCBBZHZhbmNlZCBTZWN1cml0eSBLZXJuZWwiIGlm IFhTTV9GTEFTSworCWNvbmZpZyBYU01fU0lMT19ERUZBVUxUCisJCWJvb2wgIlNJTE8iIGlmIFhT TV9TSUxPCiBlbmRjaG9pY2UKIAogY29uZmlnIExBVEVfSFdET00KZGlmZiAtLWdpdCBhL3hlbi9p bmNsdWRlL3hzbS9kdW1teS5oIGIveGVuL2luY2x1ZGUveHNtL2R1bW15LmgKaW5kZXggYjBhYzFm NjZiMy4uYWU5NzE4MjJkNSAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUveHNtL2R1bW15LmgKKysr IGIveGVuL2luY2x1ZGUveHNtL2R1bW15LmgKQEAgLTQ4LDcgKzQ4LDggQEAgdm9pZCBfX3hzbV9h Y3Rpb25fbWlzbWF0Y2hfZGV0ZWN0ZWQodm9pZCk7CiAgKiBUaGVyZSBpcyBubyB4c21fZGVmYXVs dF90IGFyZ3VtZW50IGF2YWlsYWJsZSwgc28gdGhlIHZhbHVlIGZyb20gdGhlIGFzc2VydGlvbgog ICogaXMgdXNlZCB0byBpbml0aWFsaXplIHRoZSB2YXJpYWJsZS4KICAqLwotI2RlZmluZSBYU01f SU5MSU5FIC8qICovCisjZGVmaW5lIFhTTV9JTkxJTkUgX19tYXliZV91bnVzZWQKKwogI2RlZmlu ZSBYU01fREVGQVVMVF9BUkcgLyogKi8KICNkZWZpbmUgWFNNX0RFRkFVTFRfVk9JRCB2b2lkCiAj ZGVmaW5lIFhTTV9BU1NFUlRfQUNUSU9OKGRlZikgeHNtX2RlZmF1bHRfdCBhY3Rpb24gPSBkZWY7 ICh2b2lkKWFjdGlvbgpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveHNtL3hzbS5oIGIveGVuL2lu Y2x1ZGUveHNtL3hzbS5oCmluZGV4IDNkNjc5NjI0OTMuLjNiMTkyYjVjMzEgMTAwNjQ0Ci0tLSBh L3hlbi9pbmNsdWRlL3hzbS94c20uaAorKysgYi94ZW4vaW5jbHVkZS94c20veHNtLmgKQEAgLTcz Myw2ICs3MzMsMTIgQEAgZXh0ZXJuIGNvbnN0IHVuc2lnbmVkIGNoYXIgeHNtX2ZsYXNrX2luaXRf cG9saWN5W107CiBleHRlcm4gY29uc3QgdW5zaWduZWQgaW50IHhzbV9mbGFza19pbml0X3BvbGlj eV9zaXplOwogI2VuZGlmCiAKKyNpZmRlZiBDT05GSUdfWFNNX1NJTE8KK2V4dGVybiB2b2lkIHNp bG9faW5pdCh2b2lkKTsKKyNlbHNlCitzdGF0aWMgaW5saW5lIHZvaWQgc2lsb19pbml0KHZvaWQp IHt9CisjZW5kaWYKKwogI2Vsc2UgLyogQ09ORklHX1hTTSAqLwogCiAjaW5jbHVkZSA8eHNtL2R1 bW15Lmg+CmRpZmYgLS1naXQgYS94ZW4veHNtL01ha2VmaWxlIGIveGVuL3hzbS9NYWtlZmlsZQpp bmRleCA4YmI0YTI0ZjA5Li5lNGQ1ODFlMDY1IDEwMDY0NAotLS0gYS94ZW4veHNtL01ha2VmaWxl CisrKyBiL3hlbi94c20vTWFrZWZpbGUKQEAgLTEsNSArMSw2IEBACiBvYmoteSArPSB4c21fY29y ZS5vCiBvYmotJChDT05GSUdfWFNNKSArPSB4c21fcG9saWN5Lm8KIG9iai0kKENPTkZJR19YU00p ICs9IGR1bW15Lm8KK29iai0kKENPTkZJR19YU01fU0lMTykgKz0gc2lsby5vCiAKIHN1YmRpci0k KENPTkZJR19YU01fRkxBU0spICs9IGZsYXNrCmRpZmYgLS1naXQgYS94ZW4veHNtL3NpbG8uYyBi L3hlbi94c20vc2lsby5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLjQ4 NTA3NTZhM2QKLS0tIC9kZXYvbnVsbAorKysgYi94ZW4veHNtL3NpbG8uYwpAQCAtMCwwICsxLDEw OCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogeHNtL3NpbG8uYworICoKKyAqIFNJTE8g bW9kdWxlIGZvciBYU00gKFhlbiBTZWN1cml0eSBNb2R1bGVzKQorICoKKyAqIENvcHlyaWdodCAo YykgMjAxOCBDaXRyaXggU3lzdGVtcyBMdGQuCisgKgorICogVGhpcyBwcm9ncmFtIGlzIGZyZWUg c29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQKKyAqIHVu ZGVyIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp Y2Vuc2UsCisgKiB2ZXJzaW9uIDIsIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLgorICoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9w ZSBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0IFdJVEhPVVQKKyAqIEFOWSBXQVJSQU5UWTsgd2l0aG91 dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvcgorICogRklU TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGZvcgorICogbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSBy ZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFsb25nIHdp dGgKKyAqIHRoaXMgcHJvZ3JhbTsgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNl bnNlcy8+LgorICovCisjZGVmaW5lIFhTTV9OT19XUkFQUEVSUworI2luY2x1ZGUgPHhzbS9kdW1t eS5oPgorCisvKgorICogQ2hlY2sgaWYgaW50ZXItZG9tYWluIGNvbW11bmljYXRpb24gaXMgYWxs b3dlZC4KKyAqIFJldHVybiB0cnVlIHdoZW4gcGFzcyBjaGVjay4KKyAqLworc3RhdGljIGJvb2wg c2lsb19tb2RlX2RvbV9jaGVjayhjb25zdCBzdHJ1Y3QgZG9tYWluICpsZG9tLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgZG9tYWluICpyZG9tKQoreworICAg IGNvbnN0IHN0cnVjdCBkb21haW4gKmN1cnJkID0gY3VycmVudC0+ZG9tYWluOworCisgICAgcmV0 dXJuIChpc19jb250cm9sX2RvbWFpbihjdXJyZCkgfHwgaXNfY29udHJvbF9kb21haW4obGRvbSkg fHwKKyAgICAgICAgICAgIGlzX2NvbnRyb2xfZG9tYWluKHJkb20pIHx8IGxkb20gPT0gcmRvbSk7 Cit9CisKK3N0YXRpYyBpbnQgc2lsb19ldnRjaG5fdW5ib3VuZChzdHJ1Y3QgZG9tYWluICpkMSwg c3RydWN0IGV2dGNobiAqY2huLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbWlk X3QgaWQyKQoreworICAgIGludCByYyA9IC1FUEVSTTsKKyAgICBzdHJ1Y3QgZG9tYWluICpkMiA9 IHJjdV9sb2NrX2RvbWFpbl9ieV9hbnlfaWQoaWQyKTsKKworICAgIGlmICggZDIgPT0gTlVMTCAp CisgICAgICAgIHJjID0gLUVTUkNIOworICAgIGVsc2UKKyAgICB7CisgICAgICAgIGlmICggc2ls b19tb2RlX2RvbV9jaGVjayhkMSwgZDIpICkKKyAgICAgICAgICAgIHJjID0geHNtX2V2dGNobl91 bmJvdW5kKGQxLCBjaG4sIGlkMik7CisgICAgICAgIHJjdV91bmxvY2tfZG9tYWluKGQyKTsKKyAg ICB9CisKKyAgICByZXR1cm4gcmM7Cit9CisKK3N0YXRpYyBpbnQgc2lsb19ldnRjaG5faW50ZXJk b21haW4oc3RydWN0IGRvbWFpbiAqZDEsIHN0cnVjdCBldnRjaG4gKmNoYW4xLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZG9tYWluICpkMiwgc3RydWN0IGV2dGNo biAqY2hhbjIpCit7CisgICAgaWYgKCBzaWxvX21vZGVfZG9tX2NoZWNrKGQxLCBkMikgKQorICAg ICAgICByZXR1cm4geHNtX2V2dGNobl9pbnRlcmRvbWFpbihkMSwgY2hhbjEsIGQyLCBjaGFuMik7 CisgICAgcmV0dXJuIC1FUEVSTTsKK30KKworc3RhdGljIGludCBzaWxvX2dyYW50X21hcHJlZihz dHJ1Y3QgZG9tYWluICpkMSwgc3RydWN0IGRvbWFpbiAqZDIsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHVpbnQzMl90IGZsYWdzKQoreworICAgIGlmICggc2lsb19tb2RlX2RvbV9jaGVj ayhkMSwgZDIpICkKKyAgICAgICAgcmV0dXJuIHhzbV9ncmFudF9tYXByZWYoZDEsIGQyLCBmbGFn cyk7CisgICAgcmV0dXJuIC1FUEVSTTsKK30KKworc3RhdGljIGludCBzaWxvX2dyYW50X3RyYW5z ZmVyKHN0cnVjdCBkb21haW4gKmQxLCBzdHJ1Y3QgZG9tYWluICpkMikKK3sKKyAgICBpZiAoIHNp bG9fbW9kZV9kb21fY2hlY2soZDEsIGQyKSApCisgICAgICAgIHJldHVybiB4c21fZ3JhbnRfdHJh bnNmZXIoZDEsIGQyKTsKKyAgICByZXR1cm4gLUVQRVJNOworfQorCitzdGF0aWMgaW50IHNpbG9f Z3JhbnRfY29weShzdHJ1Y3QgZG9tYWluICpkMSwgc3RydWN0IGRvbWFpbiAqZDIpCit7CisgICAg aWYgKCBzaWxvX21vZGVfZG9tX2NoZWNrKGQxLCBkMikgKQorICAgICAgICByZXR1cm4geHNtX2dy YW50X2NvcHkoZDEsIGQyKTsKKyAgICByZXR1cm4gLUVQRVJNOworfQorCitzdGF0aWMgc3RydWN0 IHhzbV9vcGVyYXRpb25zIHNpbG9feHNtX29wcyA9IHsKKyAgICAuZXZ0Y2huX3VuYm91bmQgPSBz aWxvX2V2dGNobl91bmJvdW5kLAorICAgIC5ldnRjaG5faW50ZXJkb21haW4gPSBzaWxvX2V2dGNo bl9pbnRlcmRvbWFpbiwKKyAgICAuZ3JhbnRfbWFwcmVmID0gc2lsb19ncmFudF9tYXByZWYsCisg ICAgLmdyYW50X3RyYW5zZmVyID0gc2lsb19ncmFudF90cmFuc2ZlciwKKyAgICAuZ3JhbnRfY29w eSA9IHNpbG9fZ3JhbnRfY29weSwKK307CisKK3ZvaWQgX19pbml0IHNpbG9faW5pdCh2b2lkKQor eworICAgIHByaW50aygiSW5pdGlhbGlzaW5nIFhTTSBTSUxPIG1vZGVcbiIpOworCisgICAgaWYg KCByZWdpc3Rlcl94c20oJnNpbG9feHNtX29wcykgKQorICAgICAgICBwYW5pYygiU0lMTzogVW5h YmxlIHRvIHJlZ2lzdGVyIHdpdGggWFNNXG4iKTsKK30KKworLyoKKyAqIExvY2FsIHZhcmlhYmxl czoKKyAqIG1vZGU6IEMKKyAqIGMtZmlsZS1zdHlsZTogIkJTRCIKKyAqIGMtYmFzaWMtb2Zmc2V0 OiA0CisgKiB0YWItd2lkdGg6IDQKKyAqIGluZGVudC10YWJzLW1vZGU6IG5pbAorICogRW5kOgor ICovCmRpZmYgLS1naXQgYS94ZW4veHNtL3hzbV9jb3JlLmMgYi94ZW4veHNtL3hzbV9jb3JlLmMK aW5kZXggOWU1YzFiMDdhMi4uNjZlNTk4N2MyNyAxMDA2NDQKLS0tIGEveGVuL3hzbS94c21fY29y ZS5jCisrKyBiL3hlbi94c20veHNtX2NvcmUuYwpAQCAtMzQsMTEgKzM0LDE0IEBAIHN0cnVjdCB4 c21fb3BlcmF0aW9ucyAqeHNtX29wczsKIGVudW0geHNtX2Jvb3RwYXJhbSB7CiAgICAgWFNNX0JP T1RQQVJBTV9EVU1NWSwKICAgICBYU01fQk9PVFBBUkFNX0ZMQVNLLAorICAgIFhTTV9CT09UUEFS QU1fU0lMTywKIH07CiAKIHN0YXRpYyBlbnVtIHhzbV9ib290cGFyYW0gX19pbml0ZGF0YSB4c21f Ym9vdHBhcmFtID0KICNpZmRlZiBDT05GSUdfWFNNX0ZMQVNLX0RFRkFVTFQKICAgICBYU01fQk9P VFBBUkFNX0ZMQVNLOworI2VsaWYgQ09ORklHX1hTTV9TSUxPX0RFRkFVTFQKKyAgICBYU01fQk9P VFBBUkFNX1NJTE87CiAjZWxzZQogICAgIFhTTV9CT09UUEFSQU1fRFVNTVk7CiAjZW5kaWYKQEAg LTUyLDYgKzU1LDEwIEBAIHN0YXRpYyBpbnQgX19pbml0IHBhcnNlX3hzbV9wYXJhbShjb25zdCBj aGFyICpzKQogI2lmZGVmIENPTkZJR19YU01fRkxBU0sKICAgICBlbHNlIGlmICggIXN0cmNtcChz LCAiZmxhc2siKSApCiAgICAgICAgIHhzbV9ib290cGFyYW0gPSBYU01fQk9PVFBBUkFNX0ZMQVNL OworI2VuZGlmCisjaWZkZWYgQ09ORklHX1hTTV9TSUxPCisgICAgZWxzZSBpZiAoICFzdHJjbXAo cywgInNpbG8iKSApCisgICAgICAgIHhzbV9ib290cGFyYW0gPSBYU01fQk9PVFBBUkFNX1NJTE87 CiAjZW5kaWYKICAgICBlbHNlCiAgICAgewpAQCAtOTksNiArMTA2LDEwIEBAIHN0YXRpYyBpbnQg X19pbml0IHhzbV9jb3JlX2luaXQoY29uc3Qgdm9pZCAqcG9saWN5X2J1ZmZlciwgc2l6ZV90IHBv bGljeV9zaXplKQogICAgICAgICBmbGFza19pbml0KHBvbGljeV9idWZmZXIsIHBvbGljeV9zaXpl KTsKICAgICAgICAgYnJlYWs7CiAKKyAgICBjYXNlIFhTTV9CT09UUEFSQU1fU0lMTzoKKyAgICAg ICAgc2lsb19pbml0KCk7CisgICAgICAgIGJyZWFrOworCiAgICAgZGVmYXVsdDoKICAgICAgICAg QVNTRVJUX1VOUkVBQ0hBQkxFKCk7CiAgICAgICAgIGJyZWFrOwotLSAKMi4xOC4wCgoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxp bmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5w cm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==