From mboxrd@z Thu Jan 1 00:00:00 1970 From: Roger Pau Monne Subject: [PATCH v7 03/32] libxc: unify xc_dom_p2m_{host/guest} Date: Fri, 2 Oct 2015 17:48:34 +0200 Message-ID: <1443800943-17668-4-git-send-email-roger.pau@citrix.com> References: <1443800943-17668-1-git-send-email-roger.pau@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1Zi2aA-00084D-L9 for xen-devel@lists.xenproject.org; Fri, 02 Oct 2015 15:49:14 +0000 In-Reply-To: <1443800943-17668-1-git-send-email-roger.pau@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xenproject.org Cc: Wei Liu , Ian Campbell , Stefano Stabellini , Ian Jackson , Samuel Thibault , Roger Pau Monne List-Id: xen-devel@lists.xenproject.org VW5pZnkgYm90aCBmdW5jdGlvbnMgaW50byB4Y19kb21fcDJtLiBTaG91bGQgbm90IGludHJvZHVj ZSBhbnkgZnVuY3Rpb25hbApjaGFuZ2UuCgpTaWduZWQtb2ZmLWJ5OiBSb2dlciBQYXUgTW9ubsOp IDxyb2dlci5wYXVAY2l0cml4LmNvbT4KUmV2aWV3ZWQtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJl dy5jb29wZXIzQGNpdHJpeC5jb20+CkFja2VkLWJ5OiBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXgu Y29tPgpDYzogSWFuIEphY2tzb24gPGlhbi5qYWNrc29uQGV1LmNpdHJpeC5jb20+CkNjOiBTdGVm YW5vIFN0YWJlbGxpbmkgPHN0ZWZhbm8uc3RhYmVsbGluaUBldS5jaXRyaXguY29tPgpDYzogSWFu IENhbXBiZWxsIDxpYW4uY2FtcGJlbGxAY2l0cml4LmNvbT4KQ2M6IFdlaSBMaXUgPHdlaS5saXUy QGNpdHJpeC5jb20+CkNjOiBTYW11ZWwgVGhpYmF1bHQgPHNhbXVlbC50aGliYXVsdEBlbnMtbHlv bi5vcmc+Ci0tLQpDaGFuZ2VzIHNpbmNlIHYzOgogLSBBZGQgQW5kcmV3IENvb3BlciBSZXZpZXdl ZC1ieS4KIC0gQWRkIFdlaSBBY2tlZC1ieS4KLS0tCiBzdHViZG9tL2dydWIva2V4ZWMuYyAgICAg ICAgICAgICAgfCAgNCArKy0tCiB0b29scy9saWJ4Yy9pbmNsdWRlL3hjX2RvbS5oICAgICAgfCAx NCArKy0tLS0tLS0tLS0tLQogdG9vbHMvbGlieGMveGNfZG9tX2Jvb3QuYyAgICAgICAgIHwgMTAg KysrKystLS0tLQogdG9vbHMvbGlieGMveGNfZG9tX2NvbXBhdF9saW51eC5jIHwgIDQgKystLQog dG9vbHMvbGlieGMveGNfZG9tX3g4Ni5jICAgICAgICAgIHwgMzIgKysrKysrKysrKysrKysrKy0t LS0tLS0tLS0tLS0tLS0KIHRvb2xzL2xpYnhsL2xpYnhsX2RvbS5jICAgICAgICAgICB8ICA0ICsr LS0KIDYgZmlsZXMgY2hhbmdlZCwgMjkgaW5zZXJ0aW9ucygrKSwgMzkgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3R1YmRvbS9ncnViL2tleGVjLmMgYi9zdHViZG9tL2dydWIva2V4ZWMuYwpp bmRleCA0YzMzYjI1Li4wYjJmNGYzIDEwMDY0NAotLS0gYS9zdHViZG9tL2dydWIva2V4ZWMuYwor KysgYi9zdHViZG9tL2dydWIva2V4ZWMuYwpAQCAtMzU4LDkgKzM1OCw5IEBAIHZvaWQga2V4ZWMo dm9pZCAqa2VybmVsLCBsb25nIGtlcm5lbF9zaXplLCB2b2lkICptb2R1bGUsIGxvbmcgbW9kdWxl X3NpemUsIGNoYXIKICNpZmRlZiBfX3g4Nl82NF9fCiAgICAgICAgICAgICAgICAgTU1VRVhUX1BJ Tl9MNF9UQUJMRSwKICNlbmRpZgotICAgICAgICAgICAgICAgIHhjX2RvbV9wMm1faG9zdChkb20s IGRvbS0+cGd0YWJsZXNfc2VnLnBmbiksCisgICAgICAgICAgICAgICAgeGNfZG9tX3AybShkb20s IGRvbS0+cGd0YWJsZXNfc2VnLnBmbiksCiAgICAgICAgICAgICAgICAgZG9tLT5ndWVzdF9kb21p ZCkpICE9IDAgKSB7Ci0gICAgICAgIGdydWJfcHJpbnRmKCJwaW5fdGFibGUoJWx4KSByZXR1cm5l ZCAlZFxuIiwgeGNfZG9tX3AybV9ob3N0KGRvbSwKKyAgICAgICAgZ3J1Yl9wcmludGYoInBpbl90 YWJsZSglbHgpIHJldHVybmVkICVkXG4iLCB4Y19kb21fcDJtKGRvbSwKICAgICAgICAgICAgICAg ICAgICAgZG9tLT5wZ3RhYmxlc19zZWcucGZuKSwgcmMpOwogICAgICAgICBlcnJudW0gPSBFUlJf Qk9PVF9GQUlMVVJFOwogICAgICAgICBnb3RvIG91dF9yZW1hcDsKZGlmZiAtLWdpdCBhL3Rvb2xz L2xpYnhjL2luY2x1ZGUveGNfZG9tLmggYi90b29scy9saWJ4Yy9pbmNsdWRlL3hjX2RvbS5oCmlu ZGV4IDYwMmM1Y2QuLmU3OTRhMTMgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhjL2luY2x1ZGUveGNf ZG9tLmgKKysrIGIvdG9vbHMvbGlieGMvaW5jbHVkZS94Y19kb20uaApAQCAtMzczLDE5ICszNzMs OSBAQCBzdGF0aWMgaW5saW5lIHZvaWQgKnhjX2RvbV92YWRkcl90b19wdHIoc3RydWN0IHhjX2Rv bV9pbWFnZSAqZG9tLAogICAgIHJldHVybiBwdHIgKyBvZmZzZXQ7CiB9CiAKLXN0YXRpYyBpbmxp bmUgeGVuX3Bmbl90IHhjX2RvbV9wMm1faG9zdChzdHJ1Y3QgeGNfZG9tX2ltYWdlICpkb20sIHhl bl9wZm5fdCBwZm4pCitzdGF0aWMgaW5saW5lIHhlbl9wZm5fdCB4Y19kb21fcDJtKHN0cnVjdCB4 Y19kb21faW1hZ2UgKmRvbSwgeGVuX3Bmbl90IHBmbikKIHsKLSAgICBpZiAoZG9tLT5zaGFkb3df ZW5hYmxlZCkKLSAgICAgICAgcmV0dXJuIHBmbjsKLSAgICBpZiAocGZuIDwgZG9tLT5yYW1iYXNl X3BmbiB8fCBwZm4gPj0gZG9tLT5yYW1iYXNlX3BmbiArIGRvbS0+dG90YWxfcGFnZXMpCi0gICAg ICAgIHJldHVybiBJTlZBTElEX01GTjsKLSAgICByZXR1cm4gZG9tLT5wMm1faG9zdFtwZm4gLSBk b20tPnJhbWJhc2VfcGZuXTsKLX0KLQotc3RhdGljIGlubGluZSB4ZW5fcGZuX3QgeGNfZG9tX3Ay bV9ndWVzdChzdHJ1Y3QgeGNfZG9tX2ltYWdlICpkb20sCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHhlbl9wZm5fdCBwZm4pCi17Ci0gICAgaWYgKHhjX2RvbV9mZWF0 dXJlX3RyYW5zbGF0ZWQoZG9tKSkKKyAgICBpZiAoIGRvbS0+c2hhZG93X2VuYWJsZWQgfHwgeGNf ZG9tX2ZlYXR1cmVfdHJhbnNsYXRlZChkb20pICkKICAgICAgICAgcmV0dXJuIHBmbjsKICAgICBp ZiAocGZuIDwgZG9tLT5yYW1iYXNlX3BmbiB8fCBwZm4gPj0gZG9tLT5yYW1iYXNlX3BmbiArIGRv bS0+dG90YWxfcGFnZXMpCiAgICAgICAgIHJldHVybiBJTlZBTElEX01GTjsKZGlmZiAtLWdpdCBh L3Rvb2xzL2xpYnhjL3hjX2RvbV9ib290LmMgYi90b29scy9saWJ4Yy94Y19kb21fYm9vdC5jCmlu ZGV4IDhlMDY0MDYuLjdjMzBmOTYgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhjL3hjX2RvbV9ib290 LmMKKysrIGIvdG9vbHMvbGlieGMveGNfZG9tX2Jvb3QuYwpAQCAtNTMsNyArNTMsNyBAQCBzdGF0 aWMgaW50IHNldHVwX2h5cGVyY2FsbF9wYWdlKHN0cnVjdCB4Y19kb21faW1hZ2UgKmRvbSkKICAg ICAgICAgICAgICAgICAgIGRvbS0+cGFybXMudmlydF9oeXBlcmNhbGwsIHBmbik7CiAgICAgZG9t Y3RsLmNtZCA9IFhFTl9ET01DVExfaHlwZXJjYWxsX2luaXQ7CiAgICAgZG9tY3RsLmRvbWFpbiA9 IGRvbS0+Z3Vlc3RfZG9taWQ7Ci0gICAgZG9tY3RsLnUuaHlwZXJjYWxsX2luaXQuZ21mbiA9IHhj X2RvbV9wMm1fZ3Vlc3QoZG9tLCBwZm4pOworICAgIGRvbWN0bC51Lmh5cGVyY2FsbF9pbml0Lmdt Zm4gPSB4Y19kb21fcDJtKGRvbSwgcGZuKTsKICAgICByYyA9IGRvX2RvbWN0bChkb20tPnhjaCwg JmRvbWN0bCk7CiAgICAgaWYgKCByYyAhPSAwICkKICAgICAgICAgeGNfZG9tX3BhbmljKGRvbS0+ eGNoLCBYQ19JTlRFUk5BTF9FUlJPUiwKQEAgLTgzLDcgKzgzLDcgQEAgc3RhdGljIGludCBjbGVh cl9wYWdlKHN0cnVjdCB4Y19kb21faW1hZ2UgKmRvbSwgeGVuX3Bmbl90IHBmbikKICAgICBpZiAo IHBmbiA9PSAwICkKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICBkc3QgPSB4Y19kb21fcDJtX2hv c3QoZG9tLCBwZm4pOworICAgIGRzdCA9IHhjX2RvbV9wMm0oZG9tLCBwZm4pOwogICAgIERPTVBS SU5URigiJXM6IHBmbiAweCUiIFBSSXBmbiAiLCBtZm4gMHglIiBQUklwZm4gIiIsCiAgICAgICAg ICAgICAgIF9fRlVOQ1RJT05fXywgcGZuLCBkc3QpOwogICAgIHJjID0geGNfY2xlYXJfZG9tYWlu X3BhZ2UoZG9tLT54Y2gsIGRvbS0+Z3Vlc3RfZG9taWQsIGRzdCk7CkBAIC0xNzcsNyArMTc3LDcg QEAgdm9pZCAqeGNfZG9tX2Jvb3RfZG9tVV9tYXAoc3RydWN0IHhjX2RvbV9pbWFnZSAqZG9tLCB4 ZW5fcGZuX3QgcGZuLAogICAgIH0KIAogICAgIGZvciAoIGkgPSAwOyBpIDwgY291bnQ7IGkrKyAp Ci0gICAgICAgIGVudHJpZXNbaV0ubWZuID0geGNfZG9tX3AybV9ob3N0KGRvbSwgcGZuICsgaSk7 CisgICAgICAgIGVudHJpZXNbaV0ubWZuID0geGNfZG9tX3AybShkb20sIHBmbiArIGkpOwogCiAg ICAgcHRyID0geGNfbWFwX2ZvcmVpZ25fcmFuZ2VzKGRvbS0+eGNoLCBkb20tPmd1ZXN0X2RvbWlk LAogICAgICAgICAgICAgICAgIGNvdW50IDw8IHBhZ2Vfc2hpZnQsIFBST1RfUkVBRCB8IFBST1Rf V1JJVEUsIDEgPDwgcGFnZV9zaGlmdCwKQEAgLTQzNCw4ICs0MzQsOCBAQCBpbnQgeGNfZG9tX2du dHRhYl9pbml0KHN0cnVjdCB4Y19kb21faW1hZ2UgKmRvbSkKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgZG9tLT5jb25zb2xlX2RvbWlkLCBkb20tPnhlbnN0b3JlX2RvbWlk KTsKICAgICB9IGVsc2UgewogICAgICAgICByZXR1cm4geGNfZG9tX2dudHRhYl9zZWVkKGRvbS0+ eGNoLCBkb20tPmd1ZXN0X2RvbWlkLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHhjX2RvbV9wMm1faG9zdChkb20sIGRvbS0+Y29uc29sZV9wZm4pLAotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHhjX2RvbV9wMm1faG9zdChkb20sIGRvbS0+eGVuc3RvcmVfcGZu KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4Y19kb21fcDJtKGRvbSwgZG9t LT5jb25zb2xlX3BmbiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeGNfZG9t X3AybShkb20sIGRvbS0+eGVuc3RvcmVfcGZuKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBkb20tPmNvbnNvbGVfZG9taWQsIGRvbS0+eGVuc3RvcmVfZG9taWQpOwogICAgIH0K IH0KZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhjL3hjX2RvbV9jb21wYXRfbGludXguYyBiL3Rvb2xz L2xpYnhjL3hjX2RvbV9jb21wYXRfbGludXguYwppbmRleCBhM2FiYjk5Li41YzFmMDQzIDEwMDY0 NAotLS0gYS90b29scy9saWJ4Yy94Y19kb21fY29tcGF0X2xpbnV4LmMKKysrIGIvdG9vbHMvbGli eGMveGNfZG9tX2NvbXBhdF9saW51eC5jCkBAIC02NCw4ICs2NCw4IEBAIHN0YXRpYyBpbnQgeGNf bGludXhfYnVpbGRfaW50ZXJuYWwoc3RydWN0IHhjX2RvbV9pbWFnZSAqZG9tLAogICAgIGlmICgg KHJjID0geGNfZG9tX2dudHRhYl9pbml0KGRvbSkpICE9IDApCiAgICAgICAgIGdvdG8gb3V0Owog Ci0gICAgKmNvbnNvbGVfbWZuID0geGNfZG9tX3AybV9ob3N0KGRvbSwgZG9tLT5jb25zb2xlX3Bm bik7Ci0gICAgKnN0b3JlX21mbiA9IHhjX2RvbV9wMm1faG9zdChkb20sIGRvbS0+eGVuc3RvcmVf cGZuKTsKKyAgICAqY29uc29sZV9tZm4gPSB4Y19kb21fcDJtKGRvbSwgZG9tLT5jb25zb2xlX3Bm bik7CisgICAgKnN0b3JlX21mbiA9IHhjX2RvbV9wMm0oZG9tLCBkb20tPnhlbnN0b3JlX3Bmbik7 CiAKICBvdXQ6CiAgICAgcmV0dXJuIHJjOwpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGMveGNfZG9t X3g4Ni5jIGIvdG9vbHMvbGlieGMveGNfZG9tX3g4Ni5jCmluZGV4IGUyZjM3OTIuLmYzOTYyY2Qg MTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhjL3hjX2RvbV94ODYuYworKysgYi90b29scy9saWJ4Yy94 Y19kb21feDg2LmMKQEAgLTI0Nyw3ICsyNDcsNyBAQCBzdGF0aWMgaW50IHNldHVwX3BndGFibGVz X3g4Nl8zMl9wYWUoc3RydWN0IHhjX2RvbV9pbWFnZSAqZG9tKQogICAgIHVuc2lnbmVkIGxvbmcg bDNvZmYsIGwyb2ZmID0gMCwgbDFvZmY7CiAgICAgeGVuX3ZhZGRyX3QgYWRkcjsKICAgICB4ZW5f cGZuX3QgcGdwZm47Ci0gICAgeGVuX3Bmbl90IGwzbWZuID0geGNfZG9tX3AybV9ndWVzdChkb20s IGwzcGZuKTsKKyAgICB4ZW5fcGZuX3QgbDNtZm4gPSB4Y19kb21fcDJtKGRvbSwgbDNwZm4pOwog CiAgICAgaWYgKCBkb20tPnBhcm1zLnBhZSA9PSBYRU5fUEFFX1lFUyApCiAgICAgewpAQCAtMjc5 LDcgKzI3OSw3IEBAIHN0YXRpYyBpbnQgc2V0dXBfcGd0YWJsZXNfeDg2XzMyX3BhZShzdHJ1Y3Qg eGNfZG9tX2ltYWdlICpkb20pCiAgICAgICAgICAgICAgICAgZ290byBwZm5fZXJyb3I7CiAgICAg ICAgICAgICBsM29mZiA9IGwzX3RhYmxlX29mZnNldF9wYWUoYWRkcik7CiAgICAgICAgICAgICBs M3RhYltsM29mZl0gPQotICAgICAgICAgICAgICAgIHBmbl90b19wYWRkcih4Y19kb21fcDJtX2d1 ZXN0KGRvbSwgbDJwZm4pKSB8IEwzX1BST1Q7CisgICAgICAgICAgICAgICAgcGZuX3RvX3BhZGRy KHhjX2RvbV9wMm0oZG9tLCBsMnBmbikpIHwgTDNfUFJPVDsKICAgICAgICAgICAgIGwycGZuKys7 CiAgICAgICAgIH0KIApAQCAtMjkxLDcgKzI5MSw3IEBAIHN0YXRpYyBpbnQgc2V0dXBfcGd0YWJs ZXNfeDg2XzMyX3BhZShzdHJ1Y3QgeGNfZG9tX2ltYWdlICpkb20pCiAgICAgICAgICAgICAgICAg Z290byBwZm5fZXJyb3I7CiAgICAgICAgICAgICBsMm9mZiA9IGwyX3RhYmxlX29mZnNldF9wYWUo YWRkcik7CiAgICAgICAgICAgICBsMnRhYltsMm9mZl0gPQotICAgICAgICAgICAgICAgIHBmbl90 b19wYWRkcih4Y19kb21fcDJtX2d1ZXN0KGRvbSwgbDFwZm4pKSB8IEwyX1BST1Q7CisgICAgICAg ICAgICAgICAgcGZuX3RvX3BhZGRyKHhjX2RvbV9wMm0oZG9tLCBsMXBmbikpIHwgTDJfUFJPVDsK ICAgICAgICAgICAgIGwxcGZuKys7CiAgICAgICAgIH0KIApAQCAtMjk5LDcgKzI5OSw3IEBAIHN0 YXRpYyBpbnQgc2V0dXBfcGd0YWJsZXNfeDg2XzMyX3BhZShzdHJ1Y3QgeGNfZG9tX2ltYWdlICpk b20pCiAgICAgICAgIGwxb2ZmID0gbDFfdGFibGVfb2Zmc2V0X3BhZShhZGRyKTsKICAgICAgICAg cGdwZm4gPSAoYWRkciAtIGRvbS0+cGFybXMudmlydF9iYXNlKSA+PiBQQUdFX1NISUZUX1g4NjsK ICAgICAgICAgbDF0YWJbbDFvZmZdID0KLSAgICAgICAgICAgIHBmbl90b19wYWRkcih4Y19kb21f cDJtX2d1ZXN0KGRvbSwgcGdwZm4pKSB8IEwxX1BST1Q7CisgICAgICAgICAgICBwZm5fdG9fcGFk ZHIoeGNfZG9tX3AybShkb20sIHBncGZuKSkgfCBMMV9QUk9UOwogICAgICAgICBpZiAoICghZG9t LT5wdmhfZW5hYmxlZCkgICAgICAgICAgICAgICAgJiYKICAgICAgICAgICAgICAoYWRkciA+PSBk b20tPnBndGFibGVzX3NlZy52c3RhcnQpICYmCiAgICAgICAgICAgICAgKGFkZHIgPCBkb20tPnBn dGFibGVzX3NlZy52ZW5kKSApCkBAIC0zMTYsNyArMzE2LDcgQEAgc3RhdGljIGludCBzZXR1cF9w Z3RhYmxlc194ODZfMzJfcGFlKHN0cnVjdCB4Y19kb21faW1hZ2UgKmRvbSkKICAgICBpZiAoIGRv bS0+dmlydF9wZ3RhYl9lbmQgPD0gMHhjMDAwMDAwMCApCiAgICAgewogICAgICAgICBET01QUklO VEYoIiVzOiBQQUU6IGV4dHJhIGwyIHBhZ2UgdGFibGUgZm9yIGwzIzMiLCBfX0ZVTkNUSU9OX18p OwotICAgICAgICBsM3RhYlszXSA9IHBmbl90b19wYWRkcih4Y19kb21fcDJtX2d1ZXN0KGRvbSwg bDJwZm4pKSB8IEwzX1BST1Q7CisgICAgICAgIGwzdGFiWzNdID0gcGZuX3RvX3BhZGRyKHhjX2Rv bV9wMm0oZG9tLCBsMnBmbikpIHwgTDNfUFJPVDsKICAgICB9CiAgICAgcmV0dXJuIDA7CiAKQEAg LTM3NSw3ICszNzUsNyBAQCBzdGF0aWMgaW50IHNldHVwX3BndGFibGVzX3g4Nl82NChzdHJ1Y3Qg eGNfZG9tX2ltYWdlICpkb20pCiAgICAgICAgICAgICAgICAgZ290byBwZm5fZXJyb3I7CiAgICAg ICAgICAgICBsNG9mZiA9IGw0X3RhYmxlX29mZnNldF94ODZfNjQoYWRkcik7CiAgICAgICAgICAg ICBsNHRhYltsNG9mZl0gPQotICAgICAgICAgICAgICAgIHBmbl90b19wYWRkcih4Y19kb21fcDJt X2d1ZXN0KGRvbSwgbDNwZm4pKSB8IEw0X1BST1Q7CisgICAgICAgICAgICAgICAgcGZuX3RvX3Bh ZGRyKHhjX2RvbV9wMm0oZG9tLCBsM3BmbikpIHwgTDRfUFJPVDsKICAgICAgICAgICAgIGwzcGZu Kys7CiAgICAgICAgIH0KIApAQCAtMzg3LDcgKzM4Nyw3IEBAIHN0YXRpYyBpbnQgc2V0dXBfcGd0 YWJsZXNfeDg2XzY0KHN0cnVjdCB4Y19kb21faW1hZ2UgKmRvbSkKICAgICAgICAgICAgICAgICBn b3RvIHBmbl9lcnJvcjsKICAgICAgICAgICAgIGwzb2ZmID0gbDNfdGFibGVfb2Zmc2V0X3g4Nl82 NChhZGRyKTsKICAgICAgICAgICAgIGwzdGFiW2wzb2ZmXSA9Ci0gICAgICAgICAgICAgICAgcGZu X3RvX3BhZGRyKHhjX2RvbV9wMm1fZ3Vlc3QoZG9tLCBsMnBmbikpIHwgTDNfUFJPVDsKKyAgICAg ICAgICAgICAgICBwZm5fdG9fcGFkZHIoeGNfZG9tX3AybShkb20sIGwycGZuKSkgfCBMM19QUk9U OwogICAgICAgICAgICAgbDJwZm4rKzsKICAgICAgICAgfQogCkBAIC0zOTksNyArMzk5LDcgQEAg c3RhdGljIGludCBzZXR1cF9wZ3RhYmxlc194ODZfNjQoc3RydWN0IHhjX2RvbV9pbWFnZSAqZG9t KQogICAgICAgICAgICAgICAgIGdvdG8gcGZuX2Vycm9yOwogICAgICAgICAgICAgbDJvZmYgPSBs Ml90YWJsZV9vZmZzZXRfeDg2XzY0KGFkZHIpOwogICAgICAgICAgICAgbDJ0YWJbbDJvZmZdID0K LSAgICAgICAgICAgICAgICBwZm5fdG9fcGFkZHIoeGNfZG9tX3AybV9ndWVzdChkb20sIGwxcGZu KSkgfCBMMl9QUk9UOworICAgICAgICAgICAgICAgIHBmbl90b19wYWRkcih4Y19kb21fcDJtKGRv bSwgbDFwZm4pKSB8IEwyX1BST1Q7CiAgICAgICAgICAgICBsMXBmbisrOwogICAgICAgICB9CiAK QEAgLTQwNyw3ICs0MDcsNyBAQCBzdGF0aWMgaW50IHNldHVwX3BndGFibGVzX3g4Nl82NChzdHJ1 Y3QgeGNfZG9tX2ltYWdlICpkb20pCiAgICAgICAgIGwxb2ZmID0gbDFfdGFibGVfb2Zmc2V0X3g4 Nl82NChhZGRyKTsKICAgICAgICAgcGdwZm4gPSAoYWRkciAtIGRvbS0+cGFybXMudmlydF9iYXNl KSA+PiBQQUdFX1NISUZUX1g4NjsKICAgICAgICAgbDF0YWJbbDFvZmZdID0KLSAgICAgICAgICAg IHBmbl90b19wYWRkcih4Y19kb21fcDJtX2d1ZXN0KGRvbSwgcGdwZm4pKSB8IEwxX1BST1Q7Cisg ICAgICAgICAgICBwZm5fdG9fcGFkZHIoeGNfZG9tX3AybShkb20sIHBncGZuKSkgfCBMMV9QUk9U OwogICAgICAgICBpZiAoICghZG9tLT5wdmhfZW5hYmxlZCkgICAgICAgICAgICAgICAgJiYKICAg ICAgICAgICAgICAoYWRkciA+PSBkb20tPnBndGFibGVzX3NlZy52c3RhcnQpICYmCiAgICAgICAg ICAgICAgKGFkZHIgPCBkb20tPnBndGFibGVzX3NlZy52ZW5kKSApCkBAIC00OTAsOSArNDkwLDkg QEAgc3RhdGljIGludCBzdGFydF9pbmZvX3g4Nl8zMihzdHJ1Y3QgeGNfZG9tX2ltYWdlICpkb20p CiAgICAgc3RhcnRfaW5mby0+bWZuX2xpc3QgPSBkb20tPnAybV9zZWcudnN0YXJ0OwogCiAgICAg c3RhcnRfaW5mby0+ZmxhZ3MgPSBkb20tPmZsYWdzOwotICAgIHN0YXJ0X2luZm8tPnN0b3JlX21m biA9IHhjX2RvbV9wMm1fZ3Vlc3QoZG9tLCBkb20tPnhlbnN0b3JlX3Bmbik7CisgICAgc3RhcnRf aW5mby0+c3RvcmVfbWZuID0geGNfZG9tX3AybShkb20sIGRvbS0+eGVuc3RvcmVfcGZuKTsKICAg ICBzdGFydF9pbmZvLT5zdG9yZV9ldnRjaG4gPSBkb20tPnhlbnN0b3JlX2V2dGNobjsKLSAgICBz dGFydF9pbmZvLT5jb25zb2xlLmRvbVUubWZuID0geGNfZG9tX3AybV9ndWVzdChkb20sIGRvbS0+ Y29uc29sZV9wZm4pOworICAgIHN0YXJ0X2luZm8tPmNvbnNvbGUuZG9tVS5tZm4gPSB4Y19kb21f cDJtKGRvbSwgZG9tLT5jb25zb2xlX3Bmbik7CiAgICAgc3RhcnRfaW5mby0+Y29uc29sZS5kb21V LmV2dGNobiA9IGRvbS0+Y29uc29sZV9ldnRjaG47CiAKICAgICBpZiAoIGRvbS0+cmFtZGlza19i bG9iICkKQEAgLTUzNiw5ICs1MzYsOSBAQCBzdGF0aWMgaW50IHN0YXJ0X2luZm9feDg2XzY0KHN0 cnVjdCB4Y19kb21faW1hZ2UgKmRvbSkKICAgICBzdGFydF9pbmZvLT5tZm5fbGlzdCA9IGRvbS0+ cDJtX3NlZy52c3RhcnQ7CiAKICAgICBzdGFydF9pbmZvLT5mbGFncyA9IGRvbS0+ZmxhZ3M7Ci0g ICAgc3RhcnRfaW5mby0+c3RvcmVfbWZuID0geGNfZG9tX3AybV9ndWVzdChkb20sIGRvbS0+eGVu c3RvcmVfcGZuKTsKKyAgICBzdGFydF9pbmZvLT5zdG9yZV9tZm4gPSB4Y19kb21fcDJtKGRvbSwg ZG9tLT54ZW5zdG9yZV9wZm4pOwogICAgIHN0YXJ0X2luZm8tPnN0b3JlX2V2dGNobiA9IGRvbS0+ eGVuc3RvcmVfZXZ0Y2huOwotICAgIHN0YXJ0X2luZm8tPmNvbnNvbGUuZG9tVS5tZm4gPSB4Y19k b21fcDJtX2d1ZXN0KGRvbSwgZG9tLT5jb25zb2xlX3Bmbik7CisgICAgc3RhcnRfaW5mby0+Y29u c29sZS5kb21VLm1mbiA9IHhjX2RvbV9wMm0oZG9tLCBkb20tPmNvbnNvbGVfcGZuKTsKICAgICBz dGFydF9pbmZvLT5jb25zb2xlLmRvbVUuZXZ0Y2huID0gZG9tLT5jb25zb2xlX2V2dGNobjsKIAog ICAgIGlmICggZG9tLT5yYW1kaXNrX2Jsb2IgKQpAQCAtNjA2LDcgKzYwNiw3IEBAIHN0YXRpYyBp bnQgdmNwdV94ODZfMzIoc3RydWN0IHhjX2RvbV9pbWFnZSAqZG9tLCB2b2lkICpwdHIpCiAgICAg ICAgICBkb20tPnBhcm1zLnBhZSA9PSBYRU5fUEFFX0JJTU9EQUwgKQogICAgICAgICBjdHh0LT52 bV9hc3Npc3QgfD0gKDFVTCA8PCBWTUFTU1RfVFlQRV9wYWVfZXh0ZW5kZWRfY3IzKTsKIAotICAg IGNyM19wZm4gPSB4Y19kb21fcDJtX2d1ZXN0KGRvbSwgZG9tLT5wZ3RhYmxlc19zZWcucGZuKTsK KyAgICBjcjNfcGZuID0geGNfZG9tX3AybShkb20sIGRvbS0+cGd0YWJsZXNfc2VnLnBmbik7CiAg ICAgY3R4dC0+Y3RybHJlZ1szXSA9IHhlbl9wZm5fdG9fY3IzX3g4Nl8zMihjcjNfcGZuKTsKICAg ICBET01QUklOVEYoIiVzOiBjcjM6IHBmbiAweCUiIFBSSXBmbiAiIG1mbiAweCUiIFBSSXBmbiAi IiwKICAgICAgICAgICAgICAgX19GVU5DVElPTl9fLCBkb20tPnBndGFibGVzX3NlZy5wZm4sIGNy M19wZm4pOwpAQCAtNjQ1LDcgKzY0NSw3IEBAIHN0YXRpYyBpbnQgdmNwdV94ODZfNjQoc3RydWN0 IHhjX2RvbV9pbWFnZSAqZG9tLCB2b2lkICpwdHIpCiAgICAgY3R4dC0+dXNlcl9yZWdzLnJmbGFn cyA9IDEgPDwgOTsgLyogSW50ZXJydXB0IEVuYWJsZSAqLwogCiAgICAgY3R4dC0+ZmxhZ3MgPSBW R0NGX2luX2tlcm5lbF9YODZfNjQgfCBWR0NGX29ubGluZV9YODZfNjQ7Ci0gICAgY3IzX3BmbiA9 IHhjX2RvbV9wMm1fZ3Vlc3QoZG9tLCBkb20tPnBndGFibGVzX3NlZy5wZm4pOworICAgIGNyM19w Zm4gPSB4Y19kb21fcDJtKGRvbSwgZG9tLT5wZ3RhYmxlc19zZWcucGZuKTsKICAgICBjdHh0LT5j dHJscmVnWzNdID0geGVuX3Bmbl90b19jcjNfeDg2XzY0KGNyM19wZm4pOwogICAgIERPTVBSSU5U RigiJXM6IGNyMzogcGZuIDB4JSIgUFJJcGZuICIgbWZuIDB4JSIgUFJJcGZuICIiLAogICAgICAg ICAgICAgICBfX0ZVTkNUSU9OX18sIGRvbS0+cGd0YWJsZXNfc2VnLnBmbiwgY3IzX3Bmbik7CkBA IC0xMDE4LDcgKzEwMTgsNyBAQCBpbnQgYXJjaF9zZXR1cF9ib290bGF0ZShzdHJ1Y3QgeGNfZG9t X2ltYWdlICpkb20pCiAgICAgICAgIC8qIHBhcmF2aXJ0dWFsaXplZCBndWVzdCAqLwogICAgICAg ICB4Y19kb21fdW5tYXBfb25lKGRvbSwgZG9tLT5wZ3RhYmxlc19zZWcucGZuKTsKICAgICAgICAg cmMgPSBwaW5fdGFibGUoZG9tLT54Y2gsIHBnZF90eXBlLAotICAgICAgICAgICAgICAgICAgICAg ICB4Y19kb21fcDJtX2hvc3QoZG9tLCBkb20tPnBndGFibGVzX3NlZy5wZm4pLAorICAgICAgICAg ICAgICAgICAgICAgICB4Y19kb21fcDJtKGRvbSwgZG9tLT5wZ3RhYmxlc19zZWcucGZuKSwKICAg ICAgICAgICAgICAgICAgICAgICAgZG9tLT5ndWVzdF9kb21pZCk7CiAgICAgICAgIGlmICggcmMg IT0gMCApCiAgICAgICAgIHsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX2RvbS5jIGIv dG9vbHMvbGlieGwvbGlieGxfZG9tLmMKaW5kZXggYjUxNDM3Ny4uMjg2ZGY5MyAxMDA2NDQKLS0t IGEvdG9vbHMvbGlieGwvbGlieGxfZG9tLmMKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfZG9tLmMK QEAgLTczOSw4ICs3MzksOCBAQCBpbnQgbGlieGxfX2J1aWxkX3B2KGxpYnhsX19nYyAqZ2MsIHVp bnQzMl90IGRvbWlkLAogICAgICAgICBzdGF0ZS0+Y29uc29sZV9tZm4gPSBkb20tPmNvbnNvbGVf cGZuOwogICAgICAgICBzdGF0ZS0+c3RvcmVfbWZuID0gZG9tLT54ZW5zdG9yZV9wZm47CiAgICAg fSBlbHNlIHsKLSAgICAgICAgc3RhdGUtPmNvbnNvbGVfbWZuID0geGNfZG9tX3AybV9ob3N0KGRv bSwgZG9tLT5jb25zb2xlX3Bmbik7Ci0gICAgICAgIHN0YXRlLT5zdG9yZV9tZm4gPSB4Y19kb21f cDJtX2hvc3QoZG9tLCBkb20tPnhlbnN0b3JlX3Bmbik7CisgICAgICAgIHN0YXRlLT5jb25zb2xl X21mbiA9IHhjX2RvbV9wMm0oZG9tLCBkb20tPmNvbnNvbGVfcGZuKTsKKyAgICAgICAgc3RhdGUt PnN0b3JlX21mbiA9IHhjX2RvbV9wMm0oZG9tLCBkb20tPnhlbnN0b3JlX3Bmbik7CiAgICAgfQog CiAgICAgbGlieGxfX2ZpbGVfcmVmZXJlbmNlX3VubWFwKCZzdGF0ZS0+cHZfa2VybmVsKTsKLS0g CjEuOS41IChBcHBsZSBHaXQtNTAuMykKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54 ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=