From mboxrd@z Thu Jan 1 00:00:00 1970 From: George Dunlap Subject: [PATCH RFC 4/4] libxl: Allow local access for block devices with hotplug scripts Date: Wed, 2 Mar 2016 11:14:04 +0000 Message-ID: <1456917244-2908-5-git-send-email-george.dunlap@citrix.com> References: <1456917244-2908-1-git-send-email-george.dunlap@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1456917244-2908-1-git-send-email-george.dunlap@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: George Dunlap , Ian Jackson , Wei Liu , Ian Campbell , Roger Pau Monne List-Id: xen-devel@lists.xenproject.org RnJvbTogR2VvcmdlIER1bmxhcCA8Z2VvcmdlLmR1bmxhcEBldS5jaXRyaXguY29tPgoKcHlncnVi IGFuZCBxZW11dSBuZWVkIHRvIGJlIGFibGUgdG8gYWNjZXNzIGEgVk0ncyBkaXNrcyBsb2NhbGx5 IGluCm9yZGVyIHRvIGJlIGFibGUgdG8gcHVsbCBvdXQgdGhlIGtlcm5lbCBhbmQgcHJvdmlkZSBl bXVsYXRlZCBkaXNrCmFjY2VzcywgcmVzcGVjdGl2ZWx5LiAgVGhpcyBjYW4gYmUgZG9uZSBlaXRo ZXIgYnkgYWNjZXNzaW5nIHRoZSBsb2NhbApkaXNrIGRpcmVjdGx5LCBvciBieSBwbHVnZ2luZyB0 aGUgdGFyZ2V0IGRpc2sgaW50byBkb20wIHRvIGFsbG93CmFjY2Vzcy4KClVuZm9ydHVuYXRlbHks IHdoaWxlIHRoZSBwbHVnZ2luZyBtYWNoaW5lcnkgd29ya3MgZm9yIHB5Z3J1YiwgaXQgZG9lcwpu b3QgeWV0IHdvcmsgZm9yIHFlbXV1OyBtZWFuaW5nIHRoYXQgZGlzayBob3RwbHVnIHNjcmlwdHMg Y2Fubm90IGJlCnVzZWQgd2l0aCBIVk0gZG9tYWlucy4KCkZvcnR1bmF0ZWx5LCBkaXNrcyB1c2lu ZyBob3RwbHVnIHNjcmlwdHMgY3JlYXRlZCBpbiBkb20wIGRvIGNyZWF0ZSBhCmJsb2NrIGRldmlj ZSBhcyBwYXJ0IG9mIHNldC11cCwgd2hpY2ggY2FuIGJlIGFjY2Vzc2VkIGxvY2FsbHkuCgpGaXJz dCwgbW9kaWZ5IHRoZSB3cml0ZV9kZXYgZnVuY3Rpb24gaW4gYmxvY2stY29tbW9uIHRvIGFkZCBh biBleHRyYQpwYXJhbWV0ZXI6ICJwaHlzaWNhbC1kZXZpY2UtcGF0aCIsIHRoZSBwYXRoIHRvIHRo ZSBwaHlzaWNhbCBkZXZpY2UKd2hpY2ggaXMgcGFzc2VkIHRvIGJsa2JhY2suICBBbGwgaG90cGx1 ZyBzY3JpcHRzIHRoYXQgdXNlIHdyaXRlX2Rldgp3aWxsIGF1dG9tYXRpY2FsbHkgZ2FpbiB0aGUg bmV3IGZ1bmN0aW9uYWxpdHkuCgpTZWNvbmQsIG1vZGlmeSBsaWJ4bF9fZGV2aWNlX2Rpc2tfc2V0 ZGVmYXVsdCgpIHRvIGJlIGFibGUgdG8gZmlzaCB0aGlzCnBhdGggb3V0IG9mIHhlbnN0b3JlIGFu ZCBwYXNzIGl0IGJhY2suCgpXZSBuZWVkIHRoZSB0YXJnZXQgZG9taWQgdG8gZmluZCB0aGUgYXBw cm9wcmlhdGUgeGVuc3RvcmUgbm9kZSwgc28gYWRkIHRoYXQgdG8KbGlieGxfX2Rpc2tfbG9jYWxf c3RhdGUuCgpUaGlzIGFsbG93cyBxZW11dSB0byBib290IHdpdGggYmxvY2sgZGV2aWNlcyBjcmVh dGVkIHdpdGggaG90cGx1ZyBzY3JpcHRzLgoKVW5mb3J0dW5hdGVseSBpdCBkb2VzIG5vdCBhbGxv dyBweWdydWIgdG8gYWNjZXNzIGEgZGV2aWNlIGxvY2FsbHkKd2l0aG91dCBoYXZpbmcgdG8gcGx1 ZyBpdCBpbiwgYmVjYXVzZSB3aGVuIHB5Z3J1YiBydW5zIHRoZSBndWVzdHMnCmRpc2tzIGhhdmUg bm90IHlldCBiZWVuIHNldCB1cC4KClNpZ25lZC1vZmYtYnk6IEdlb3JnZSBEdW5sYXAgPGdlb3Jn ZS5kdW5sYXBAZXUuY2l0cml4LmNvbT4KLS0tCkNDOiBJYW4gQ2FtcGJlbGwgPGlhbi5jYW1wYmVs bEBjaXRyaXguY29tPgpDQzogSWFuIEphY2tzb24gPGlhbi5qYWNrc29uQGNpdHJpeC5jb20+CkND OiBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXguY29tPgpDQzogUm9nZXIgUGF1IE1vbm5lIDxyb2dl ci5wYXVAY2l0cml4LmNvbT4KLS0tCiB0b29scy9ob3RwbHVnL0xpbnV4L2Jsb2NrLWNvbW1vbi5z aCB8ICA1ICsrKystCiB0b29scy9saWJ4bC9saWJ4bC5jICAgICAgICAgICAgICAgICB8IDQyICsr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0KIHRvb2xzL2xpYnhsL2xpYnhsX2Jv b3Rsb2FkZXIuYyAgICAgIHwgIDEgKwogdG9vbHMvbGlieGwvbGlieGxfZG0uYyAgICAgICAgICAg ICAgfCAgMiArLQogdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaCAgICAgICAgfCAgNCArKyst CiA1IGZpbGVzIGNoYW5nZWQsIDQ4IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvdG9vbHMvaG90cGx1Zy9MaW51eC9ibG9jay1jb21tb24uc2ggYi90b29scy9ob3Rw bHVnL0xpbnV4L2Jsb2NrLWNvbW1vbi5zaAppbmRleCBlZTk1MDA5Li4xYWVjZDdlIDEwMDY0NAot LS0gYS90b29scy9ob3RwbHVnL0xpbnV4L2Jsb2NrLWNvbW1vbi5zaAorKysgYi90b29scy9ob3Rw bHVnL0xpbnV4L2Jsb2NrLWNvbW1vbi5zaApAQCAtNTgsOCArNTgsOSBAQCBkZXZpY2VfbWFqb3Jf bWlub3IoKQogIwogd3JpdGVfZGV2KCkgewogICBsb2NhbCBtbQorICBsb2NhbCBkZXY9IiQxIgog ICAKLSAgbW09JChkZXZpY2VfbWFqb3JfbWlub3IgIiQxIikKKyAgbW09JChkZXZpY2VfbWFqb3Jf bWlub3IgIiRkZXYiKQogIAogICBpZiBbIC16ICRtbSBdCiAgIHRoZW4KQEAgLTY4LDYgKzY5LDgg QEAgd3JpdGVfZGV2KCkgewogIAogICB4ZW5zdG9yZV93cml0ZSAiJFhFTkJVU19QQVRIL3BoeXNp Y2FsLWRldmljZSIgIiRtbSIKIAorICB4ZW5zdG9yZV93cml0ZSAiJFhFTkJVU19QQVRIL3BoeXNp Y2FsLWRldmljZS1wYXRoIiAiJGRldiIKKwogICBzdWNjZXNzCiB9CiAKZGlmZiAtLWdpdCBhL3Rv b2xzL2xpYnhsL2xpYnhsLmMgYi90b29scy9saWJ4bC9saWJ4bC5jCmluZGV4IDJmNjZjM2EuLmNj OTdmYTggMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsLmMKKysrIGIvdG9vbHMvbGlieGwv bGlieGwuYwpAQCAtMjI5Niw3ICsyMjk2LDcgQEAgaW50IGxpYnhsX19kZXZpY2VfZGlza19zZXRk ZWZhdWx0KGxpYnhsX19nYyAqZ2MsIGxpYnhsX2RldmljZV9kaXNrICpkaXNrKQogfQogCiBpbnQg bGlieGxfX2RldmljZV9mcm9tX2Rpc2sobGlieGxfX2djICpnYywgdWludDMyX3QgZG9taWQsCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX2RldmljZV9kaXNrICpkaXNr LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsaWJ4bF9kZXZpY2Vf ZGlzayAqZGlzaywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfX2Rl dmljZSAqZGV2aWNlKQogewogICAgIGludCBkZXZpZDsKQEAgLTI0NTQsNiArMjQ1NCw3IEBAIHN0 YXRpYyB2b2lkIGRldmljZV9kaXNrX2FkZChsaWJ4bF9fZWdjICplZ2MsIHVpbnQzMl90IGRvbWlk LAogICAgICAgICAgICAgICAgICAgICBpZiAoIWxpYnhsX19kZXZpY2VfcGh5c2Rpc2tfbWFqb3Jf bWlub3IoZGV2LCAmbWFqb3IsICZtaW5vcikpCiAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4 YXJyYXlfYXBwZW5kX3BhaXIoYmFjaywgInBoeXNpY2FsLWRldmljZSIsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0NTUFJJTlRGKCIleDoleCIsIG1ham9y LCBtaW5vcikpOworICAgICAgICAgICAgICAgICAgICBmbGV4YXJyYXlfYXBwZW5kX3BhaXIoYmFj aywgInBoeXNpY2FsLWRldmljZS1wYXRoIiwgZGV2KTsKICAgICAgICAgICAgICAgICB9CiAKICAg ICAgICAgICAgICAgICBhc3NlcnQoZGV2aWNlLT5iYWNrZW5kX2tpbmQgPT0gTElCWExfX0RFVklD RV9LSU5EX1ZCRCk7CkBAIC0zMDE3LDYgKzMwMTgsNyBAQCBzdGF0aWMgY2hhciAqIGxpYnhsX19h bGxvY192ZGV2KGxpYnhsX19nYyAqZ2MsIHZvaWQgKmdldF92ZGV2X3VzZXIsCiAvKiBDYWxsYmFj a3MgKi8KIAogY2hhciAqIGxpYnhsX19kZXZpY2VfZGlza19maW5kX2xvY2FsX3BhdGgobGlieGxf X2djICpnYywgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4 bF9kb21pZCBkb21pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IGxpYnhsX2RldmljZV9kaXNrICpkaXNrLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgYm9vbCBxZGlza19kaXJlY3QpIHsKICAgICBjaGFyICpwYXRoID0g TlVMTDsKQEAgLTMwNDcsNiArMzA0OSw0MCBAQCBjaGFyICogbGlieGxfX2RldmljZV9kaXNrX2Zp bmRfbG9jYWxfcGF0aChsaWJ4bF9fZ2MgKmdjLAogICAgICAgICBwYXRoID0gbGlieGxfX3N0cmR1 cChnYywgZGlzay0+cGRldl9wYXRoKTsKICAgICAgICAgTE9HKERFQlVHLCAiRGlyZWN0bHkgYWNj ZXNzaW5nIGxvY2FsIFFESVNLIHRhcmdldCAlcyIsIHBhdGgpOwogICAgICAgICBnb3RvIG91dDsK KyAgICB9IAorCisgICAgLyogCisgICAgICogSWYgdGhlIGZvcm1hdCBpc24ndCByYXcgYW5kIC8g b3Igd2UncmUgdXNpbmcgYSBzY3JpcHQsIHRoZW4gc2VlCisgICAgICogaWYgdGhlIHNjcmlwdCBo YXMgd3JpdHRlbiBhIHBhdGggdG8gdGhlICJjb29rZWQiIG5vZGUKKyAgICAgKi8KKyAgICBpZihk aXNrLT5zY3JpcHQpIHsKKyAgICAgICAgbGlieGxfX2RldmljZSBkZXZpY2U7CisgICAgICAgIGNo YXIgKiBiZV9wYXRoLCAqcGRwYXRoOworICAgICAgICBpbnQgcmM7CisKKyAgICAgICAgTE9HKERF QlVHLCAiUnVuIGZyb20gYSBzY3JpcHQ7IGNoZWNraW5nIGZvciBwaHlzaWNhbC1kZXZpY2UtcGF0 aCAodmRldiAlcykiLAorICAgICAgICAgICAgZGlzay0+dmRldik7CisKKyAgICAgICAgcmMgPSBs aWJ4bF9fZGV2aWNlX2Zyb21fZGlzayhnYywgZG9taWQsIGRpc2ssICZkZXZpY2UpOworICAgICAg ICBpZiAocmMgPCAwKQorICAgICAgICAgICAgZ290byBvdXQ7CisKKyAgICAgICAgLyogTmVlZHM6 IGRvbXBhdGgsIGRldmljZSB0eXBlLCBkb21pZCAqLworICAgICAgICBiZV9wYXRoID0gbGlieGxf X2RldmljZV9iYWNrZW5kX3BhdGgoZ2MsICZkZXZpY2UpOworCisgICAgICAgIC8qIEZJWE1FOiBE byB3ZSBuZWVkIHRvIHdhaXQgZm9yIHRoaW5ncyB0byBiZSBzZXQgdXAgaGVyZT8gKi8KKyAgICAg ICAgCisgICAgICAgIHBkcGF0aCA9IGxpYnhsX19zcHJpbnRmKGdjLCAiJXMvcGh5c2ljYWwtZGV2 aWNlLXBhdGgiLCBiZV9wYXRoKTsKKworICAgICAgICBMT0coREVCVUcsICJBdHRlbXB0aW5nIHRv IHJlYWQgbm9kZSAlcyIsIHBkcGF0aCk7CisgICAgICAgIHBhdGggPSBsaWJ4bF9feHNfcmVhZChn YywgWEJUX05VTEwsIHBkcGF0aCk7CisKKyAgICAgICAgaWYgKHBhdGgpCisgICAgICAgICAgICBM T0coREVCVUcsICJBY2Nlc3NpbmcgY29va2VkIGJsb2NrIGRldmljZSAlcyIsIHBhdGgpOworICAg ICAgICBlbHNlCisgICAgICAgICAgICBMT0coREVCVUcsICJObyBwaHlzaWNhbC1kZXZpY2UtcGF0 aCwgY2FuJ3QgYWNjZXNzIGxvY2FsbHkuIik7CisKKyAgICAgICAgZ290byBvdXQ7CiAgICAgfQog CiAgb3V0OgpAQCAtMzA3Myw3ICszMTA5LDggQEAgdm9pZCBsaWJ4bF9fZGV2aWNlX2Rpc2tfbG9j YWxfaW5pdGlhdGVfYXR0YWNoKGxpYnhsX19lZ2MgKmVnYywKIAogICAgIExPRyhERUJVRywgIlRy eWluZyB0byBmaW5kIGxvY2FsIHBhdGgiKTsKIAotICAgIGlmICgoZGxzLT5kaXNrcGF0aCA9IGxp YnhsX19kZXZpY2VfZGlza19maW5kX2xvY2FsX3BhdGgoZ2MsIGluX2Rpc2ssIGZhbHNlKSkpIHsK KyAgICBpZiAoKGRscy0+ZGlza3BhdGggPSBsaWJ4bF9fZGV2aWNlX2Rpc2tfZmluZF9sb2NhbF9w YXRoKGdjLCBkbHMtPmRvbWlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgaW5fZGlzaywgZmFsc2UpKSkgewogICAgICAgICBMT0co REVCVUcsICJMb2NhbCBwYXRoIGZvdW5kLCBleGVjdXRpbmcgY2FsbGJhY2suIik7CiAgICAgICAg IGRscy0+Y2FsbGJhY2soZWdjLCBkbHMsIDApOwogICAgIH0gZWxzZSB7CkBAIC0zMDg4LDcgKzMx MjUsNiBAQCB2b2lkIGxpYnhsX19kZXZpY2VfZGlza19sb2NhbF9pbml0aWF0ZV9hdHRhY2gobGli eGxfX2VnYyAqZWdjLAogICAgICAgICByYyA9IGxpYnhsX19kZXZpY2VfZGlza19zZXRkZWZhdWx0 KGdjLCBkaXNrKTsKICAgICAgICAgaWYgKHJjKSBnb3RvIG91dDsKIAotICAgICAgICAvKiBJZiB3 ZSBjYW4ndCBmaW5kIGEgbG9jYWwgcGF0aCwgYXR0YWNoIGl0ICovCiAgICAgICAgIGxpYnhsX19w cmVwYXJlX2FvX2RldmljZShhbywgJmRscy0+YW9kZXYpOwogICAgICAgICBkbHMtPmFvZGV2LmNh bGxiYWNrID0gbG9jYWxfZGV2aWNlX2F0dGFjaF9jYjsKICAgICAgICAgZGV2aWNlX2Rpc2tfYWRk KGVnYywgTElCWExfVE9PTFNUQUNLX0RPTUlELCBkaXNrLCAmZGxzLT5hb2RldiwKZGlmZiAtLWdp dCBhL3Rvb2xzL2xpYnhsL2xpYnhsX2Jvb3Rsb2FkZXIuYyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2Jv b3Rsb2FkZXIuYwppbmRleCAwYWUwNzRhLi41NjQ4ZWQ3IDEwMDY0NAotLS0gYS90b29scy9saWJ4 bC9saWJ4bF9ib290bG9hZGVyLmMKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfYm9vdGxvYWRlci5j CkBAIC0zODIsNiArMzgyLDcgQEAgdm9pZCBsaWJ4bF9fYm9vdGxvYWRlcl9ydW4obGlieGxfX2Vn YyAqZWdjLCBsaWJ4bF9fYm9vdGxvYWRlcl9zdGF0ZSAqYmwpCiAgICAgLyogVGhpcyBzZXRzIHRo ZSBzdGF0ZSBvZiB0aGUgZGxzIHN0cnVjdCBmcm9tIFVuZGVmaW5lZCB0byBJZGxlICovCiAgICAg bGlieGxfX2RldmljZV9kaXNrX2xvY2FsX2luaXQoJmJsLT5kbHMpOwogICAgIGJsLT5kbHMuYW8g PSBhbzsKKyAgICBibC0+ZGxzLmRvbWlkID0gYmwtPmRvbWlkOwogICAgIGJsLT5kbHMuaW5fZGlz ayA9IGJsLT5kaXNrOwogICAgIGJsLT5kbHMuYmxrZGV2X3N0YXJ0ID0gaW5mby0+YmxrZGV2X3N0 YXJ0OwogICAgIGJsLT5kbHMuY2FsbGJhY2sgPSBib290bG9hZGVyX2Rpc2tfYXR0YWNoZWRfY2I7 CmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4bF9kbS5jIGIvdG9vbHMvbGlieGwvbGlieGxf ZG0uYwppbmRleCA5MTdlYmJmLi41YmQ0ZGFkIDEwMDY0NAotLS0gYS90b29scy9saWJ4bC9saWJ4 bF9kbS5jCisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2RtLmMKQEAgLTEyMDcsNyArMTIwNyw3IEBA IHN0YXRpYyBpbnQgbGlieGxfX2J1aWxkX2RldmljZV9tb2RlbF9hcmdzX25ldyhsaWJ4bF9fZ2Mg KmdjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgZGlza3NbaV0uZm9ybWF0KTsKICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAg ICAgICAgIHRhcmdldF9wYXRoID0gbGlieGxfX2RldmljZV9kaXNrX2ZpbmRfbG9jYWxfcGF0aChn YywgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAmZGlza3NbaV0sIHRydWUpOworICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBndWVzdF9kb21pZCwgJmRpc2tzW2ldLCB0cnVlKTsKIAog ICAgICAgICAgICAgICAgIGlmICghdGFyZ2V0X3BhdGgpIHsKICAgICAgICAgICAgICAgICAgICAg TE9HKFdBUk4sICJObyB3YXkgdG8gZ2V0IGxvY2FsIGFjY2VzcyBkaXNrIHRvIGltYWdlOiAlcyIs IGRpc2tzW2ldLnZkZXYpOwpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwu aCBiL3Rvb2xzL2xpYnhsL2xpYnhsX2ludGVybmFsLmgKaW5kZXggMjY1YjhhMi4uYjc3M2U1YSAx MDA2NDQKLS0tIGEvdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaAorKysgYi90b29scy9saWJ4 bC9saWJ4bF9pbnRlcm5hbC5oCkBAIC0xNzA5LDcgKzE3MDksNyBAQCBfaGlkZGVuIGNoYXIgKmxp YnhsX19ibGt0YXBfZGV2cGF0aChsaWJ4bF9fZ2MgKmdjLAogX2hpZGRlbiBpbnQgbGlieGxfX2Rl dmljZV9kZXN0cm95X3RhcGRpc2sobGlieGxfX2djICpnYywgY29uc3QgY2hhciAqcGFyYW1zKTsK IAogX2hpZGRlbiBpbnQgbGlieGxfX2RldmljZV9mcm9tX2Rpc2sobGlieGxfX2djICpnYywgdWlu dDMyX3QgZG9taWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX2Rl dmljZV9kaXNrICpkaXNrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z dCBsaWJ4bF9kZXZpY2VfZGlzayAqZGlzaywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgbGlieGxfX2RldmljZSAqZGV2aWNlKTsKIAogLyogQ2FsbHMgcG9sbCgpIGFnYWluIC0g dXNlZnVsIHRvIGNoZWNrIHdoZXRoZXIgYSBzaWduYWxlZCBjb25kaXRpb24KQEAgLTI2NTAsNiAr MjY1MCw3IEBAIHR5cGVkZWYgdm9pZCBsaWJ4bF9fZGlza19sb2NhbF9zdGF0ZV9jYWxsYmFjayhs aWJ4bF9fZWdjKiwKIHN0cnVjdCBsaWJ4bF9fZGlza19sb2NhbF9zdGF0ZSB7CiAgICAgLyogZmls bGVkIGJ5IHRoZSB1c2VyICovCiAgICAgbGlieGxfX2FvICphbzsKKyAgICBsaWJ4bF9kb21pZCBk b21pZDsKICAgICBjb25zdCBsaWJ4bF9kZXZpY2VfZGlzayAqaW5fZGlzazsKICAgICBsaWJ4bF9k ZXZpY2VfZGlzayBkaXNrOwogICAgIGNvbnN0IGNoYXIgKmJsa2Rldl9zdGFydDsKQEAgLTI2NzQs NiArMjY3NSw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBsaWJ4bF9fZGV2aWNlX2Rpc2tfbG9jYWxf aW5pdChsaWJ4bF9fZGlza19sb2NhbF9zdGF0ZSAqZGxzKQogICogU2VlIGlmIHdlIGNhbiBmaW5k IGEgd2F5IHRvIGFjY2VzcyBhIGRpc2sgbG9jYWxseQogICovCiBfaGlkZGVuIGNoYXIgKiBsaWJ4 bF9fZGV2aWNlX2Rpc2tfZmluZF9sb2NhbF9wYXRoKGxpYnhsX19nYyAqZ2MsIAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9kb21pZCBkb21p ZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u c3QgbGlieGxfZGV2aWNlX2Rpc2sgKmRpc2ssCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGJvb2wgcWRpc2tfZGlyZWN0KTsKIAotLSAKMi4xLjQKCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwg bWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3Jn L3hlbi1kZXZlbAo=