From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: [PATCH v3 14/15] x86/paravirt: move the Xen-only pv_mmu_ops under the PARAVIRT_XXL umbrella Date: Tue, 28 Aug 2018 09:40:25 +0200 Message-ID: <20180828074026.820-15-jgross__2765.06032464585$1535441978$gmane$org@suse.com> References: <20180828074026.820-1-jgross@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1fuYcF-0000H0-Hp for xen-devel@lists.xenproject.org; Tue, 28 Aug 2018 07:40:43 +0000 In-Reply-To: <20180828074026.820-1-jgross@suse.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, x86@kernel.org, virtualization@lists.linux-foundation.org Cc: Juergen Gross , boris.ostrovsky@oracle.com, rusty@rustcorp.com.au, mingo@redhat.com, hpa@zytor.com, akataria@vmware.com, tglx@linutronix.de List-Id: xen-devel@lists.xenproject.org TW9zdCBvZiB0aGUgcGFyYXZpcnQgb3BzIGRlZmluZWQgaW4gcHZfbW11X29wcyBhcmUgZm9yIFhl biBQViBndWVzdHMKb25seS4gRGVmaW5lIHRoZW0gb25seSBpZiBDT05GSUdfUEFSQVZJUlRfWFhM IGlzIHNldC4KClNpZ25lZC1vZmYtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4K LS0tCiBhcmNoL3g4Ni9pbmNsdWRlL2FzbS9maXhtYXAuaCAgICAgICAgIHwgICAyICstCiBhcmNo L3g4Ni9pbmNsdWRlL2FzbS9tbXVfY29udGV4dC5oICAgIHwgICA0ICstCiBhcmNoL3g4Ni9pbmNs dWRlL2FzbS9wYXJhdmlydC5oICAgICAgIHwgMTI1ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0t LS0tLS0tLS0KIGFyY2gveDg2L2luY2x1ZGUvYXNtL3BhcmF2aXJ0X3R5cGVzLmggfCAgMzMgKysr Ky0tLS0tCiBhcmNoL3g4Ni9pbmNsdWRlL2FzbS9wZ2FsbG9jLmggICAgICAgIHwgICAyICstCiBh cmNoL3g4Ni9pbmNsdWRlL2FzbS9wZ3RhYmxlLmggICAgICAgIHwgICA3ICstCiBhcmNoL3g4Ni9p bmNsdWRlL2FzbS9zcGVjaWFsX2luc25zLmggIHwgIDExICstLQogYXJjaC94ODYva2VybmVsL2Fz bS1vZmZzZXRzLmMgICAgICAgICB8ICAgNCArLQogYXJjaC94ODYva2VybmVsL2hlYWRfNjQuUyAg ICAgICAgICAgICB8ICAgNCArLQogYXJjaC94ODYva2VybmVsL3BhcmF2aXJ0LmMgICAgICAgICAg ICB8ICAxNSArKy0tCiBhcmNoL3g4Ni9rZXJuZWwvcGFyYXZpcnRfcGF0Y2hfMzIuYyAgIHwgICA0 ICstCiBhcmNoL3g4Ni9rZXJuZWwvcGFyYXZpcnRfcGF0Y2hfNjQuYyAgIHwgICA0ICstCiAxMiBm aWxlcyBjaGFuZ2VkLCAxMDMgaW5zZXJ0aW9ucygrKSwgMTEyIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2FyY2gveDg2L2luY2x1ZGUvYXNtL2ZpeG1hcC5oIGIvYXJjaC94ODYvaW5jbHVkZS9h c20vZml4bWFwLmgKaW5kZXggZTIwMzE2OTkzMWM3Li5hYzgwZTdlYWRjM2EgMTAwNjQ0Ci0tLSBh L2FyY2gveDg2L2luY2x1ZGUvYXNtL2ZpeG1hcC5oCisrKyBiL2FyY2gveDg2L2luY2x1ZGUvYXNt L2ZpeG1hcC5oCkBAIC0xNTIsNyArMTUyLDcgQEAgdm9pZCBfX25hdGl2ZV9zZXRfZml4bWFwKGVu dW0gZml4ZWRfYWRkcmVzc2VzIGlkeCwgcHRlX3QgcHRlKTsKIHZvaWQgbmF0aXZlX3NldF9maXht YXAoZW51bSBmaXhlZF9hZGRyZXNzZXMgaWR4LAogCQkgICAgICAgcGh5c19hZGRyX3QgcGh5cywg cGdwcm90X3QgZmxhZ3MpOwogCi0jaWZuZGVmIENPTkZJR19QQVJBVklSVAorI2lmbmRlZiBDT05G SUdfUEFSQVZJUlRfWFhMCiBzdGF0aWMgaW5saW5lIHZvaWQgX19zZXRfZml4bWFwKGVudW0gZml4 ZWRfYWRkcmVzc2VzIGlkeCwKIAkJCQlwaHlzX2FkZHJfdCBwaHlzLCBwZ3Byb3RfdCBmbGFncykK IHsKZGlmZiAtLWdpdCBhL2FyY2gveDg2L2luY2x1ZGUvYXNtL21tdV9jb250ZXh0LmggYi9hcmNo L3g4Ni9pbmNsdWRlL2FzbS9tbXVfY29udGV4dC5oCmluZGV4IGVlZWI5Mjg5Yzc2NC4uMGNhNTA2 MTFlOGNlIDEwMDY0NAotLS0gYS9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9tbXVfY29udGV4dC5oCisr KyBiL2FyY2gveDg2L2luY2x1ZGUvYXNtL21tdV9jb250ZXh0LmgKQEAgLTE2LDEyICsxNiwxMiBA QAogCiBleHRlcm4gYXRvbWljNjRfdCBsYXN0X21tX2N0eF9pZDsKIAotI2lmbmRlZiBDT05GSUdf UEFSQVZJUlQKKyNpZm5kZWYgQ09ORklHX1BBUkFWSVJUX1hYTAogc3RhdGljIGlubGluZSB2b2lk IHBhcmF2aXJ0X2FjdGl2YXRlX21tKHN0cnVjdCBtbV9zdHJ1Y3QgKnByZXYsCiAJCQkJCXN0cnVj dCBtbV9zdHJ1Y3QgKm5leHQpCiB7CiB9Ci0jZW5kaWYJLyogIUNPTkZJR19QQVJBVklSVCAqLwor I2VuZGlmCS8qICFDT05GSUdfUEFSQVZJUlRfWFhMICovCiAKICNpZmRlZiBDT05GSUdfUEVSRl9F VkVOVFMKIApkaWZmIC0tZ2l0IGEvYXJjaC94ODYvaW5jbHVkZS9hc20vcGFyYXZpcnQuaCBiL2Fy Y2gveDg2L2luY2x1ZGUvYXNtL3BhcmF2aXJ0LmgKaW5kZXggNTEyNDMzYzU2YzMzLi42M2FiNThk YzViNzMgMTAwNjQ0Ci0tLSBhL2FyY2gveDg2L2luY2x1ZGUvYXNtL3BhcmF2aXJ0LmgKKysrIGIv YXJjaC94ODYvaW5jbHVkZS9hc20vcGFyYXZpcnQuaApAQCAtMTcsNiArMTcsNjIgQEAKICNpbmNs dWRlIDxsaW51eC9jcHVtYXNrLmg+CiAjaW5jbHVkZSA8YXNtL2ZyYW1lLmg+CiAKK3N0YXRpYyBp bmxpbmUgdW5zaWduZWQgbG9uZyBsb25nIHBhcmF2aXJ0X3NjaGVkX2Nsb2NrKHZvaWQpCit7CisJ cmV0dXJuIFBWT1BfQ0FMTDAodW5zaWduZWQgbG9uZyBsb25nLCB0aW1lLnNjaGVkX2Nsb2NrKTsK K30KKworc3RydWN0IHN0YXRpY19rZXk7CitleHRlcm4gc3RydWN0IHN0YXRpY19rZXkgcGFyYXZp cnRfc3RlYWxfZW5hYmxlZDsKK2V4dGVybiBzdHJ1Y3Qgc3RhdGljX2tleSBwYXJhdmlydF9zdGVh bF9ycV9lbmFibGVkOworCitzdGF0aWMgaW5saW5lIHU2NCBwYXJhdmlydF9zdGVhbF9jbG9jayhp bnQgY3B1KQoreworCXJldHVybiBQVk9QX0NBTEwxKHU2NCwgdGltZS5zdGVhbF9jbG9jaywgY3B1 KTsKK30KKworLyogVGhlIHBhcmF2aXJ0dWFsaXplZCBJL08gZnVuY3Rpb25zICovCitzdGF0aWMg aW5saW5lIHZvaWQgc2xvd19kb3duX2lvKHZvaWQpCit7CisJcHZfb3BzLmNwdS5pb19kZWxheSgp OworI2lmZGVmIFJFQUxMWV9TTE9XX0lPCisJcHZfb3BzLmNwdS5pb19kZWxheSgpOworCXB2X29w cy5jcHUuaW9fZGVsYXkoKTsKKwlwdl9vcHMuY3B1LmlvX2RlbGF5KCk7CisjZW5kaWYKK30KKwor c3RhdGljIGlubGluZSB2b2lkIF9fZmx1c2hfdGxiKHZvaWQpCit7CisJUFZPUF9WQ0FMTDAobW11 LmZsdXNoX3RsYl91c2VyKTsKK30KKworc3RhdGljIGlubGluZSB2b2lkIF9fZmx1c2hfdGxiX2ds b2JhbCh2b2lkKQoreworCVBWT1BfVkNBTEwwKG1tdS5mbHVzaF90bGJfa2VybmVsKTsKK30KKwor c3RhdGljIGlubGluZSB2b2lkIF9fZmx1c2hfdGxiX29uZV91c2VyKHVuc2lnbmVkIGxvbmcgYWRk cikKK3sKKwlQVk9QX1ZDQUxMMShtbXUuZmx1c2hfdGxiX29uZV91c2VyLCBhZGRyKTsKK30KKwor c3RhdGljIGlubGluZSB2b2lkIGZsdXNoX3RsYl9vdGhlcnMoY29uc3Qgc3RydWN0IGNwdW1hc2sg KmNwdW1hc2ssCisJCQkJICAgIGNvbnN0IHN0cnVjdCBmbHVzaF90bGJfaW5mbyAqaW5mbykKK3sK KwlQVk9QX1ZDQUxMMihtbXUuZmx1c2hfdGxiX290aGVycywgY3B1bWFzaywgaW5mbyk7Cit9CisK K3N0YXRpYyBpbmxpbmUgdm9pZCBwYXJhdmlydF90bGJfcmVtb3ZlX3RhYmxlKHN0cnVjdCBtbXVf Z2F0aGVyICp0bGIsIHZvaWQgKnRhYmxlKQoreworCVBWT1BfVkNBTEwyKG1tdS50bGJfcmVtb3Zl X3RhYmxlLCB0bGIsIHRhYmxlKTsKK30KKworc3RhdGljIGlubGluZSB2b2lkIHBhcmF2aXJ0X2Fy Y2hfZXhpdF9tbWFwKHN0cnVjdCBtbV9zdHJ1Y3QgKm1tKQoreworCVBWT1BfVkNBTEwxKG1tdS5l eGl0X21tYXAsIG1tKTsKK30KKwogI2lmZGVmIENPTkZJR19QQVJBVklSVF9YWEwKIHN0YXRpYyBp bmxpbmUgdm9pZCBsb2FkX3NwMCh1bnNpZ25lZCBsb25nIHNwMCkKIHsKQEAgLTUyLDcgKzEwOCw2 IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCB3cml0ZV9jcjAodW5zaWduZWQgbG9uZyB4KQogewogCVBW T1BfVkNBTEwxKGNwdS53cml0ZV9jcjAsIHgpOwogfQotI2VuZGlmCiAKIHN0YXRpYyBpbmxpbmUg dW5zaWduZWQgbG9uZyByZWFkX2NyMih2b2lkKQogewpAQCAtNzQsNyArMTI5LDYgQEAgc3RhdGlj IGlubGluZSB2b2lkIHdyaXRlX2NyMyh1bnNpZ25lZCBsb25nIHgpCiAJUFZPUF9WQ0FMTDEobW11 LndyaXRlX2NyMywgeCk7CiB9CiAKLSNpZmRlZiBDT05GSUdfUEFSQVZJUlRfWFhMCiBzdGF0aWMg aW5saW5lIHZvaWQgX193cml0ZV9jcjQodW5zaWduZWQgbG9uZyB4KQogewogCVBWT1BfVkNBTEwx KGNwdS53cml0ZV9jcjQsIHgpOwpAQCAtMTcyLDIzICsyMjYsNyBAQCBzdGF0aWMgaW5saW5lIGlu dCByZG1zcmxfc2FmZSh1bnNpZ25lZCBtc3IsIHVuc2lnbmVkIGxvbmcgbG9uZyAqcCkKIAkqcCA9 IHBhcmF2aXJ0X3JlYWRfbXNyX3NhZmUobXNyLCAmZXJyKTsKIAlyZXR1cm4gZXJyOwogfQotI2Vu ZGlmCiAKLXN0YXRpYyBpbmxpbmUgdW5zaWduZWQgbG9uZyBsb25nIHBhcmF2aXJ0X3NjaGVkX2Ns b2NrKHZvaWQpCi17Ci0JcmV0dXJuIFBWT1BfQ0FMTDAodW5zaWduZWQgbG9uZyBsb25nLCB0aW1l LnNjaGVkX2Nsb2NrKTsKLX0KLQotc3RydWN0IHN0YXRpY19rZXk7Ci1leHRlcm4gc3RydWN0IHN0 YXRpY19rZXkgcGFyYXZpcnRfc3RlYWxfZW5hYmxlZDsKLWV4dGVybiBzdHJ1Y3Qgc3RhdGljX2tl eSBwYXJhdmlydF9zdGVhbF9ycV9lbmFibGVkOwotCi1zdGF0aWMgaW5saW5lIHU2NCBwYXJhdmly dF9zdGVhbF9jbG9jayhpbnQgY3B1KQotewotCXJldHVybiBQVk9QX0NBTEwxKHU2NCwgdGltZS5z dGVhbF9jbG9jaywgY3B1KTsKLX0KLQotI2lmZGVmIENPTkZJR19QQVJBVklSVF9YWEwKIHN0YXRp YyBpbmxpbmUgdW5zaWduZWQgbG9uZyBsb25nIHBhcmF2aXJ0X3JlYWRfcG1jKGludCBjb3VudGVy KQogewogCXJldHVybiBQVk9QX0NBTEwxKHU2NCwgY3B1LnJlYWRfcG1jLCBjb3VudGVyKTsKQEAg LTI2NywxOCArMzA1LDYgQEAgc3RhdGljIGlubGluZSB2b2lkIHNldF9pb3BsX21hc2sodW5zaWdu ZWQgbWFzaykKIHsKIAlQVk9QX1ZDQUxMMShjcHUuc2V0X2lvcGxfbWFzaywgbWFzayk7CiB9Ci0j ZW5kaWYKLQotLyogVGhlIHBhcmF2aXJ0dWFsaXplZCBJL08gZnVuY3Rpb25zICovCi1zdGF0aWMg aW5saW5lIHZvaWQgc2xvd19kb3duX2lvKHZvaWQpCi17Ci0JcHZfb3BzLmNwdS5pb19kZWxheSgp OwotI2lmZGVmIFJFQUxMWV9TTE9XX0lPCi0JcHZfb3BzLmNwdS5pb19kZWxheSgpOwotCXB2X29w cy5jcHUuaW9fZGVsYXkoKTsKLQlwdl9vcHMuY3B1LmlvX2RlbGF5KCk7Ci0jZW5kaWYKLX0KIAog c3RhdGljIGlubGluZSB2b2lkIHBhcmF2aXJ0X2FjdGl2YXRlX21tKHN0cnVjdCBtbV9zdHJ1Y3Qg KnByZXYsCiAJCQkJCXN0cnVjdCBtbV9zdHJ1Y3QgKm5leHQpCkBAIC0yOTIsMzUgKzMxOCw2IEBA IHN0YXRpYyBpbmxpbmUgdm9pZCBwYXJhdmlydF9hcmNoX2R1cF9tbWFwKHN0cnVjdCBtbV9zdHJ1 Y3QgKm9sZG1tLAogCVBWT1BfVkNBTEwyKG1tdS5kdXBfbW1hcCwgb2xkbW0sIG1tKTsKIH0KIAot c3RhdGljIGlubGluZSB2b2lkIHBhcmF2aXJ0X2FyY2hfZXhpdF9tbWFwKHN0cnVjdCBtbV9zdHJ1 Y3QgKm1tKQotewotCVBWT1BfVkNBTEwxKG1tdS5leGl0X21tYXAsIG1tKTsKLX0KLQotc3RhdGlj IGlubGluZSB2b2lkIF9fZmx1c2hfdGxiKHZvaWQpCi17Ci0JUFZPUF9WQ0FMTDAobW11LmZsdXNo X3RsYl91c2VyKTsKLX0KLXN0YXRpYyBpbmxpbmUgdm9pZCBfX2ZsdXNoX3RsYl9nbG9iYWwodm9p ZCkKLXsKLQlQVk9QX1ZDQUxMMChtbXUuZmx1c2hfdGxiX2tlcm5lbCk7Ci19Ci1zdGF0aWMgaW5s aW5lIHZvaWQgX19mbHVzaF90bGJfb25lX3VzZXIodW5zaWduZWQgbG9uZyBhZGRyKQotewotCVBW T1BfVkNBTEwxKG1tdS5mbHVzaF90bGJfb25lX3VzZXIsIGFkZHIpOwotfQotCi1zdGF0aWMgaW5s aW5lIHZvaWQgZmx1c2hfdGxiX290aGVycyhjb25zdCBzdHJ1Y3QgY3B1bWFzayAqY3B1bWFzaywK LQkJCQkgICAgY29uc3Qgc3RydWN0IGZsdXNoX3RsYl9pbmZvICppbmZvKQotewotCVBWT1BfVkNB TEwyKG1tdS5mbHVzaF90bGJfb3RoZXJzLCBjcHVtYXNrLCBpbmZvKTsKLX0KLQotc3RhdGljIGlu bGluZSB2b2lkIHBhcmF2aXJ0X3RsYl9yZW1vdmVfdGFibGUoc3RydWN0IG1tdV9nYXRoZXIgKnRs Yiwgdm9pZCAqdGFibGUpCi17Ci0JUFZPUF9WQ0FMTDIobW11LnRsYl9yZW1vdmVfdGFibGUsIHRs YiwgdGFibGUpOwotfQotCiBzdGF0aWMgaW5saW5lIGludCBwYXJhdmlydF9wZ2RfYWxsb2Moc3Ry dWN0IG1tX3N0cnVjdCAqbW0pCiB7CiAJcmV0dXJuIFBWT1BfQ0FMTDEoaW50LCBtbXUucGdkX2Fs bG9jLCBtbSk7CkBAIC02MjMsNyArNjIwLDYgQEAgc3RhdGljIGlubGluZSB2b2lkIHBtZF9jbGVh cihwbWRfdCAqcG1kcCkKIH0KICNlbmRpZgkvKiBDT05GSUdfWDg2X1BBRSAqLwogCi0jaWZkZWYg Q09ORklHX1BBUkFWSVJUX1hYTAogI2RlZmluZSAgX19IQVZFX0FSQ0hfU1RBUlRfQ09OVEVYVF9T V0lUQ0gKIHN0YXRpYyBpbmxpbmUgdm9pZCBhcmNoX3N0YXJ0X2NvbnRleHRfc3dpdGNoKHN0cnVj dCB0YXNrX3N0cnVjdCAqcHJldikKIHsKQEAgLTYzNCw3ICs2MzAsNiBAQCBzdGF0aWMgaW5saW5l IHZvaWQgYXJjaF9lbmRfY29udGV4dF9zd2l0Y2goc3RydWN0IHRhc2tfc3RydWN0ICpuZXh0KQog ewogCVBWT1BfVkNBTEwxKGNwdS5lbmRfY29udGV4dF9zd2l0Y2gsIG5leHQpOwogfQotI2VuZGlm CiAKICNkZWZpbmUgIF9fSEFWRV9BUkNIX0VOVEVSX0xBWllfTU1VX01PREUKIHN0YXRpYyBpbmxp bmUgdm9pZCBhcmNoX2VudGVyX2xhenlfbW11X21vZGUodm9pZCkKQEAgLTY1Nyw2ICs2NTIsNyBA QCBzdGF0aWMgaW5saW5lIHZvaWQgX19zZXRfZml4bWFwKHVuc2lnbmVkIC8qIGVudW0gZml4ZWRf YWRkcmVzc2VzICovIGlkeCwKIHsKIAlwdl9vcHMubW11LnNldF9maXhtYXAoaWR4LCBwaHlzLCBm bGFncyk7CiB9CisjZW5kaWYKIAogI2lmIGRlZmluZWQoQ09ORklHX1NNUCkgJiYgZGVmaW5lZChD T05GSUdfUEFSQVZJUlRfU1BJTkxPQ0tTKQogCkBAIC05NDgsMTUgKzk0NCwyMCBAQCBleHRlcm4g dm9pZCBkZWZhdWx0X2Jhbm5lcih2b2lkKTsKICNlbmRpZiAvKiBfX0FTU0VNQkxZX18gKi8KICNl bHNlICAvKiBDT05GSUdfUEFSQVZJUlQgKi8KICMgZGVmaW5lIGRlZmF1bHRfYmFubmVyIHg4Nl9p bml0X25vb3AKKyNlbmRpZiAvKiAhQ09ORklHX1BBUkFWSVJUICovCisKICNpZm5kZWYgX19BU1NF TUJMWV9fCisjaWZuZGVmIENPTkZJR19QQVJBVklSVF9YWEwKIHN0YXRpYyBpbmxpbmUgdm9pZCBw YXJhdmlydF9hcmNoX2R1cF9tbWFwKHN0cnVjdCBtbV9zdHJ1Y3QgKm9sZG1tLAogCQkJCQkgIHN0 cnVjdCBtbV9zdHJ1Y3QgKm1tKQogewogfQorI2VuZGlmCiAKKyNpZm5kZWYgQ09ORklHX1BBUkFW SVJUCiBzdGF0aWMgaW5saW5lIHZvaWQgcGFyYXZpcnRfYXJjaF9leGl0X21tYXAoc3RydWN0IG1t X3N0cnVjdCAqbW0pCiB7CiB9CisjZW5kaWYKICNlbmRpZiAvKiBfX0FTU0VNQkxZX18gKi8KLSNl bmRpZiAvKiAhQ09ORklHX1BBUkFWSVJUICovCiAjZW5kaWYgLyogX0FTTV9YODZfUEFSQVZJUlRf SCAqLwpkaWZmIC0tZ2l0IGEvYXJjaC94ODYvaW5jbHVkZS9hc20vcGFyYXZpcnRfdHlwZXMuaCBi L2FyY2gveDg2L2luY2x1ZGUvYXNtL3BhcmF2aXJ0X3R5cGVzLmgKaW5kZXggNDQ3MzhiZjM5NTg0 Li5mOTViNzIyOGM2MTUgMTAwNjQ0Ci0tLSBhL2FyY2gveDg2L2luY2x1ZGUvYXNtL3BhcmF2aXJ0 X3R5cGVzLmgKKysrIGIvYXJjaC94ODYvaW5jbHVkZS9hc20vcGFyYXZpcnRfdHlwZXMuaApAQCAt OTEsMTMgKzkxLDE0IEBAIHN0cnVjdCBwdl9pbml0X29wcyB7CiAJCQkgIHVuc2lnbmVkIGxvbmcg YWRkciwgdW5zaWduZWQgbGVuKTsKIH0gX19ub19yYW5kb21pemVfbGF5b3V0OwogCi0KKyNpZmRl ZiBDT05GSUdfUEFSQVZJUlRfWFhMCiBzdHJ1Y3QgcHZfbGF6eV9vcHMgewogCS8qIFNldCBkZWZl cnJlZCB1cGRhdGUgbW9kZSwgdXNlZCBmb3IgYmF0Y2hpbmcgb3BlcmF0aW9ucy4gKi8KIAl2b2lk ICgqZW50ZXIpKHZvaWQpOwogCXZvaWQgKCpsZWF2ZSkodm9pZCk7CiAJdm9pZCAoKmZsdXNoKSh2 b2lkKTsKIH0gX19ub19yYW5kb21pemVfbGF5b3V0OworI2VuZGlmCiAKIHN0cnVjdCBwdl90aW1l X29wcyB7CiAJdW5zaWduZWQgbG9uZyBsb25nICgqc2NoZWRfY2xvY2spKHZvaWQpOwpAQCAtMjA1 LDMxICsyMDYsMzAgQEAgc3RydWN0IHB2X2lycV9vcHMgewogfSBfX25vX3JhbmRvbWl6ZV9sYXlv dXQ7CiAKIHN0cnVjdCBwdl9tbXVfb3BzIHsKKwkvKiBUTEIgb3BlcmF0aW9ucyAqLworCXZvaWQg KCpmbHVzaF90bGJfdXNlcikodm9pZCk7CisJdm9pZCAoKmZsdXNoX3RsYl9rZXJuZWwpKHZvaWQp OworCXZvaWQgKCpmbHVzaF90bGJfb25lX3VzZXIpKHVuc2lnbmVkIGxvbmcgYWRkcik7CisJdm9p ZCAoKmZsdXNoX3RsYl9vdGhlcnMpKGNvbnN0IHN0cnVjdCBjcHVtYXNrICpjcHVzLAorCQkJCSBj b25zdCBzdHJ1Y3QgZmx1c2hfdGxiX2luZm8gKmluZm8pOworCisJdm9pZCAoKnRsYl9yZW1vdmVf dGFibGUpKHN0cnVjdCBtbXVfZ2F0aGVyICp0bGIsIHZvaWQgKnRhYmxlKTsKKworCS8qIEhvb2sg Zm9yIGludGVyY2VwdGluZyB0aGUgZGVzdHJ1Y3Rpb24gb2YgYW4gbW1fc3RydWN0LiAqLworCXZv aWQgKCpleGl0X21tYXApKHN0cnVjdCBtbV9zdHJ1Y3QgKm1tKTsKKworI2lmZGVmIENPTkZJR19Q QVJBVklSVF9YWEwKIAl1bnNpZ25lZCBsb25nICgqcmVhZF9jcjIpKHZvaWQpOwogCXZvaWQgKCp3 cml0ZV9jcjIpKHVuc2lnbmVkIGxvbmcpOwogCiAJdW5zaWduZWQgbG9uZyAoKnJlYWRfY3IzKSh2 b2lkKTsKIAl2b2lkICgqd3JpdGVfY3IzKSh1bnNpZ25lZCBsb25nKTsKIAotCS8qCi0JICogSG9v a3MgZm9yIGludGVyY2VwdGluZyB0aGUgY3JlYXRpb24vdXNlL2Rlc3RydWN0aW9uIG9mIGFuCi0J ICogbW1fc3RydWN0LgotCSAqLworCS8qIEhvb2tzIGZvciBpbnRlcmNlcHRpbmcgdGhlIGNyZWF0 aW9uL3VzZSBvZiBhbiBtbV9zdHJ1Y3QuICovCiAJdm9pZCAoKmFjdGl2YXRlX21tKShzdHJ1Y3Qg bW1fc3RydWN0ICpwcmV2LAogCQkJICAgIHN0cnVjdCBtbV9zdHJ1Y3QgKm5leHQpOwogCXZvaWQg KCpkdXBfbW1hcCkoc3RydWN0IG1tX3N0cnVjdCAqb2xkbW0sCiAJCQkgc3RydWN0IG1tX3N0cnVj dCAqbW0pOwotCXZvaWQgKCpleGl0X21tYXApKHN0cnVjdCBtbV9zdHJ1Y3QgKm1tKTsKLQotCi0J LyogVExCIG9wZXJhdGlvbnMgKi8KLQl2b2lkICgqZmx1c2hfdGxiX3VzZXIpKHZvaWQpOwotCXZv aWQgKCpmbHVzaF90bGJfa2VybmVsKSh2b2lkKTsKLQl2b2lkICgqZmx1c2hfdGxiX29uZV91c2Vy KSh1bnNpZ25lZCBsb25nIGFkZHIpOwotCXZvaWQgKCpmbHVzaF90bGJfb3RoZXJzKShjb25zdCBz dHJ1Y3QgY3B1bWFzayAqY3B1cywKLQkJCQkgY29uc3Qgc3RydWN0IGZsdXNoX3RsYl9pbmZvICpp bmZvKTsKLQotCXZvaWQgKCp0bGJfcmVtb3ZlX3RhYmxlKShzdHJ1Y3QgbW11X2dhdGhlciAqdGxi LCB2b2lkICp0YWJsZSk7CiAKIAkvKiBIb29rcyBmb3IgYWxsb2NhdGluZyBhbmQgZnJlZWluZyBh IHBhZ2V0YWJsZSB0b3AtbGV2ZWwgKi8KIAlpbnQgICgqcGdkX2FsbG9jKShzdHJ1Y3QgbW1fc3Ry dWN0ICptbSk7CkBAIC0zMDQsNiArMzA0LDcgQEAgc3RydWN0IHB2X21tdV9vcHMgewogCSAgIGFu IG1mbi4gIFdlIGNhbiB0ZWxsIHdoaWNoIGlzIHdoaWNoIGZyb20gdGhlIGluZGV4LiAqLwogCXZv aWQgKCpzZXRfZml4bWFwKSh1bnNpZ25lZCAvKiBlbnVtIGZpeGVkX2FkZHJlc3NlcyAqLyBpZHgs CiAJCQkgICBwaHlzX2FkZHJfdCBwaHlzLCBwZ3Byb3RfdCBmbGFncyk7CisjZW5kaWYKIH0gX19u b19yYW5kb21pemVfbGF5b3V0OwogCiBzdHJ1Y3QgYXJjaF9zcGlubG9jazsKZGlmZiAtLWdpdCBh L2FyY2gveDg2L2luY2x1ZGUvYXNtL3BnYWxsb2MuaCBiL2FyY2gveDg2L2luY2x1ZGUvYXNtL3Bn YWxsb2MuaAppbmRleCBmYmQ1NzhkYWE2NmUuLmVjN2Y0MzMyNzAzMyAxMDA2NDQKLS0tIGEvYXJj aC94ODYvaW5jbHVkZS9hc20vcGdhbGxvYy5oCisrKyBiL2FyY2gveDg2L2luY2x1ZGUvYXNtL3Bn YWxsb2MuaApAQCAtOCw3ICs4LDcgQEAKIAogc3RhdGljIGlubGluZSBpbnQgIF9fcGFyYXZpcnRf cGdkX2FsbG9jKHN0cnVjdCBtbV9zdHJ1Y3QgKm1tKSB7IHJldHVybiAwOyB9CiAKLSNpZmRlZiBD T05GSUdfUEFSQVZJUlQKKyNpZmRlZiBDT05GSUdfUEFSQVZJUlRfWFhMCiAjaW5jbHVkZSA8YXNt L3BhcmF2aXJ0Lmg+CiAjZWxzZQogI2RlZmluZSBwYXJhdmlydF9wZ2RfYWxsb2MobW0pCV9fcGFy YXZpcnRfcGdkX2FsbG9jKG1tKQpkaWZmIC0tZ2l0IGEvYXJjaC94ODYvaW5jbHVkZS9hc20vcGd0 YWJsZS5oIGIvYXJjaC94ODYvaW5jbHVkZS9hc20vcGd0YWJsZS5oCmluZGV4IDViYjBmZTNiN2Uw MC4uN2IwNDg5Y2EwMjdhIDEwMDY0NAotLS0gYS9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9wZ3RhYmxl LmgKKysrIGIvYXJjaC94ODYvaW5jbHVkZS9hc20vcGd0YWJsZS5oCkBAIC01NSw5ICs1NSw5IEBA IGV4dGVybiBzdHJ1Y3QgbW1fc3RydWN0ICpwZ2RfcGFnZV9nZXRfbW0oc3RydWN0IHBhZ2UgKnBh Z2UpOwogCiBleHRlcm4gcG1kdmFsX3QgZWFybHlfcG1kX2ZsYWdzOwogCi0jaWZkZWYgQ09ORklH X1BBUkFWSVJUCisjaWZkZWYgQ09ORklHX1BBUkFWSVJUX1hYTAogI2luY2x1ZGUgPGFzbS9wYXJh dmlydC5oPgotI2Vsc2UgIC8qICFDT05GSUdfUEFSQVZJUlQgKi8KKyNlbHNlICAvKiAhQ09ORklH X1BBUkFWSVJUX1hYTCAqLwogI2RlZmluZSBzZXRfcHRlKHB0ZXAsIHB0ZSkJCW5hdGl2ZV9zZXRf cHRlKHB0ZXAsIHB0ZSkKICNkZWZpbmUgc2V0X3B0ZV9hdChtbSwgYWRkciwgcHRlcCwgcHRlKQlu YXRpdmVfc2V0X3B0ZV9hdChtbSwgYWRkciwgcHRlcCwgcHRlKQogCkBAIC0xMTEsOSArMTExLDYg QEAgZXh0ZXJuIHBtZHZhbF90IGVhcmx5X3BtZF9mbGFnczsKICNkZWZpbmUgcHRlX3ZhbCh4KQlu YXRpdmVfcHRlX3ZhbCh4KQogI2RlZmluZSBfX3B0ZSh4KQluYXRpdmVfbWFrZV9wdGUoeCkKIAot I2VuZGlmCS8qIENPTkZJR19QQVJBVklSVCAqLwotCi0jaWZuZGVmIENPTkZJR19QQVJBVklSVF9Y WEwKICNkZWZpbmUgYXJjaF9lbmRfY29udGV4dF9zd2l0Y2gocHJldikJZG8ge30gd2hpbGUoMCkK ICNlbmRpZgkvKiBDT05GSUdfUEFSQVZJUlRfWFhMICovCiAKZGlmZiAtLWdpdCBhL2FyY2gveDg2 L2luY2x1ZGUvYXNtL3NwZWNpYWxfaW5zbnMuaCBiL2FyY2gveDg2L2luY2x1ZGUvYXNtL3NwZWNp YWxfaW5zbnMuaAppbmRleCAyYWE2Y2U0YmYxNTkuLjQzYzAyOWNkYzNmZSAxMDA2NDQKLS0tIGEv YXJjaC94ODYvaW5jbHVkZS9hc20vc3BlY2lhbF9pbnNucy5oCisrKyBiL2FyY2gveDg2L2luY2x1 ZGUvYXNtL3NwZWNpYWxfaW5zbnMuaApAQCAtMTQxLDExICsxNDEsMTAgQEAgc3RhdGljIGlubGlu ZSB1bnNpZ25lZCBsb25nIF9fcmVhZF9jcjQodm9pZCkKIAlyZXR1cm4gbmF0aXZlX3JlYWRfY3I0 KCk7CiB9CiAKLSNpZmRlZiBDT05GSUdfUEFSQVZJUlQKKyNpZmRlZiBDT05GSUdfUEFSQVZJUlRf WFhMCiAjaW5jbHVkZSA8YXNtL3BhcmF2aXJ0Lmg+Ci0jZW5kaWYKKyNlbHNlCiAKLSNpZm5kZWYg Q09ORklHX1BBUkFWSVJUX1hYTAogc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHJlYWRfY3Iw KHZvaWQpCiB7CiAJcmV0dXJuIG5hdGl2ZV9yZWFkX2NyMCgpOwpAQCAtMTU1LDkgKzE1NCw3IEBA IHN0YXRpYyBpbmxpbmUgdm9pZCB3cml0ZV9jcjAodW5zaWduZWQgbG9uZyB4KQogewogCW5hdGl2 ZV93cml0ZV9jcjAoeCk7CiB9Ci0jZW5kaWYKIAotI2lmbmRlZiBDT05GSUdfUEFSQVZJUlQKIHN0 YXRpYyBpbmxpbmUgdW5zaWduZWQgbG9uZyByZWFkX2NyMih2b2lkKQogewogCXJldHVybiBuYXRp dmVfcmVhZF9jcjIoKTsKQEAgLTE4MSw5ICsxNzgsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgd3Jp dGVfY3IzKHVuc2lnbmVkIGxvbmcgeCkKIHsKIAluYXRpdmVfd3JpdGVfY3IzKHgpOwogfQotI2Vu ZGlmCiAKLSNpZm5kZWYgQ09ORklHX1BBUkFWSVJUX1hYTAogc3RhdGljIGlubGluZSB2b2lkIF9f d3JpdGVfY3I0KHVuc2lnbmVkIGxvbmcgeCkKIHsKIAluYXRpdmVfd3JpdGVfY3I0KHgpOwpAQCAt MjEzLDcgKzIwOCw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBsb2FkX2dzX2luZGV4KHVuc2lnbmVk IHNlbGVjdG9yKQogCiAjZW5kaWYKIAotI2VuZGlmLyogQ09ORklHX1BBUkFWSVJUX1hYTCAqLwor I2VuZGlmIC8qIENPTkZJR19QQVJBVklSVF9YWEwgKi8KIAogc3RhdGljIGlubGluZSB2b2lkIGNs Zmx1c2godm9sYXRpbGUgdm9pZCAqX19wKQogewpkaWZmIC0tZ2l0IGEvYXJjaC94ODYva2VybmVs L2FzbS1vZmZzZXRzLmMgYi9hcmNoL3g4Ni9rZXJuZWwvYXNtLW9mZnNldHMuYwppbmRleCAyOGU3 NTcyZmY3NGQuLmZjMDJjM2NmMjM4ZiAxMDA2NDQKLS0tIGEvYXJjaC94ODYva2VybmVsL2FzbS1v ZmZzZXRzLmMKKysrIGIvYXJjaC94ODYva2VybmVsL2FzbS1vZmZzZXRzLmMKQEAgLTY0LDEzICs2 NCwxMSBAQCB2b2lkIGNvbW1vbih2b2lkKSB7CiAJT0ZGU0VUKElBMzJfUlRfU0lHRlJBTUVfc2ln Y29udGV4dCwgcnRfc2lnZnJhbWVfaWEzMiwgdWMudWNfbWNvbnRleHQpOwogI2VuZGlmCiAKLSNp ZmRlZiBDT05GSUdfUEFSQVZJUlQKLQlCTEFOSygpOwogI2lmZGVmIENPTkZJR19QQVJBVklSVF9Y WEwKKwlCTEFOSygpOwogCU9GRlNFVChQVl9JUlFfaXJxX2Rpc2FibGUsIHBhcmF2aXJ0X3BhdGNo X3RlbXBsYXRlLCBpcnEuaXJxX2Rpc2FibGUpOwogCU9GRlNFVChQVl9JUlFfaXJxX2VuYWJsZSwg cGFyYXZpcnRfcGF0Y2hfdGVtcGxhdGUsIGlycS5pcnFfZW5hYmxlKTsKIAlPRkZTRVQoUFZfQ1BV X2lyZXQsIHBhcmF2aXJ0X3BhdGNoX3RlbXBsYXRlLCBjcHUuaXJldCk7Ci0jZW5kaWYKIAlPRkZT RVQoUFZfTU1VX3JlYWRfY3IyLCBwYXJhdmlydF9wYXRjaF90ZW1wbGF0ZSwgbW11LnJlYWRfY3Iy KTsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9hcmNoL3g4Ni9rZXJuZWwvaGVhZF82NC5TIGIvYXJj aC94ODYva2VybmVsL2hlYWRfNjQuUwppbmRleCBhNWJkNzJhMGVlMWEuLjgyN2JjYTJjMjc4MiAx MDA2NDQKLS0tIGEvYXJjaC94ODYva2VybmVsL2hlYWRfNjQuUworKysgYi9hcmNoL3g4Ni9rZXJu ZWwvaGVhZF82NC5TCkBAIC0yNSwxNCArMjUsMTIgQEAKICNpbmNsdWRlIDxhc20vZXhwb3J0Lmg+ CiAjaW5jbHVkZSA8YXNtL25vc3BlYy1icmFuY2guaD4KIAotI2lmZGVmIENPTkZJR19QQVJBVklS VAorI2lmZGVmIENPTkZJR19QQVJBVklSVF9YWEwKICNpbmNsdWRlIDxhc20vYXNtLW9mZnNldHMu aD4KICNpbmNsdWRlIDxhc20vcGFyYXZpcnQuaD4KICNkZWZpbmUgR0VUX0NSMl9JTlRPKHJlZykg R0VUX0NSMl9JTlRPX1JBWCA7IG1vdnEgJXJheCwgcmVnCiAjZWxzZQogI2RlZmluZSBHRVRfQ1Iy X0lOVE8ocmVnKSBtb3ZxICVjcjIsIHJlZwotI2VuZGlmCi0jaWZuZGVmIENPTkZJR19QQVJBVklS VF9YWEwKICNkZWZpbmUgSU5URVJSVVBUX1JFVFVSTiBpcmV0cQogI2VuZGlmCiAKZGlmZiAtLWdp dCBhL2FyY2gveDg2L2tlcm5lbC9wYXJhdmlydC5jIGIvYXJjaC94ODYva2VybmVsL3BhcmF2aXJ0 LmMKaW5kZXggZDQ4MTI0YmUzYjAxLi5hZmE5YTJhNWFjZGMgMTAwNjQ0Ci0tLSBhL2FyY2gveDg2 L2tlcm5lbC9wYXJhdmlydC5jCisrKyBiL2FyY2gveDg2L2tlcm5lbC9wYXJhdmlydC5jCkBAIC0z ODQsMTEgKzM4NCw2IEBAIHN0cnVjdCBwYXJhdmlydF9wYXRjaF90ZW1wbGF0ZSBwdl9vcHMgPSB7 CiAjZW5kaWYKIAogCS8qIE1tdSBvcHMuICovCi0JLm1tdS5yZWFkX2NyMiA9IG5hdGl2ZV9yZWFk X2NyMiwKLQkubW11LndyaXRlX2NyMiA9IG5hdGl2ZV93cml0ZV9jcjIsCi0JLm1tdS5yZWFkX2Ny MyA9IF9fbmF0aXZlX3JlYWRfY3IzLAotCS5tbXUud3JpdGVfY3IzID0gbmF0aXZlX3dyaXRlX2Ny MywKLQogCS5tbXUuZmx1c2hfdGxiX3VzZXIgPSBuYXRpdmVfZmx1c2hfdGxiLAogCS5tbXUuZmx1 c2hfdGxiX2tlcm5lbCA9IG5hdGl2ZV9mbHVzaF90bGJfZ2xvYmFsLAogCS5tbXUuZmx1c2hfdGxi X29uZV91c2VyID0gbmF0aXZlX2ZsdXNoX3RsYl9vbmVfdXNlciwKQEAgLTM5Niw2ICszOTEsMTQg QEAgc3RydWN0IHBhcmF2aXJ0X3BhdGNoX3RlbXBsYXRlIHB2X29wcyA9IHsKIAkubW11LnRsYl9y ZW1vdmVfdGFibGUgPQogCQkJKHZvaWQgKCopKHN0cnVjdCBtbXVfZ2F0aGVyICosIHZvaWQgKikp dGxiX3JlbW92ZV9wYWdlLAogCisJLm1tdS5leGl0X21tYXAgPSBwYXJhdmlydF9ub3AsCisKKyNp ZmRlZiBDT05GSUdfUEFSQVZJUlRfWFhMCisJLm1tdS5yZWFkX2NyMiA9IG5hdGl2ZV9yZWFkX2Ny MiwKKwkubW11LndyaXRlX2NyMiA9IG5hdGl2ZV93cml0ZV9jcjIsCisJLm1tdS5yZWFkX2NyMyA9 IF9fbmF0aXZlX3JlYWRfY3IzLAorCS5tbXUud3JpdGVfY3IzID0gbmF0aXZlX3dyaXRlX2NyMywK KwogCS5tbXUucGdkX2FsbG9jID0gX19wYXJhdmlydF9wZ2RfYWxsb2MsCiAJLm1tdS5wZ2RfZnJl ZSA9IHBhcmF2aXJ0X25vcCwKIApAQCAtNDQ4LDcgKzQ1MSw2IEBAIHN0cnVjdCBwYXJhdmlydF9w YXRjaF90ZW1wbGF0ZSBwdl9vcHMgPSB7CiAJLm1tdS5tYWtlX3BnZCA9IFBURV9JREVOVCwKIAog CS5tbXUuZHVwX21tYXAgPSBwYXJhdmlydF9ub3AsCi0JLm1tdS5leGl0X21tYXAgPSBwYXJhdmly dF9ub3AsCiAJLm1tdS5hY3RpdmF0ZV9tbSA9IHBhcmF2aXJ0X25vcCwKIAogCS5tbXUubGF6eV9t b2RlID0gewpAQCAtNDU4LDYgKzQ2MCw3IEBAIHN0cnVjdCBwYXJhdmlydF9wYXRjaF90ZW1wbGF0 ZSBwdl9vcHMgPSB7CiAJfSwKIAogCS5tbXUuc2V0X2ZpeG1hcCA9IG5hdGl2ZV9zZXRfZml4bWFw LAorI2VuZGlmCiAKICNpZiBkZWZpbmVkKENPTkZJR19QQVJBVklSVF9TUElOTE9DS1MpCiAJLyog TG9jayBvcHMuICovCmRpZmYgLS1naXQgYS9hcmNoL3g4Ni9rZXJuZWwvcGFyYXZpcnRfcGF0Y2hf MzIuYyBiL2FyY2gveDg2L2tlcm5lbC9wYXJhdmlydF9wYXRjaF8zMi5jCmluZGV4IDFkNDQ3MDVj NjUyOC4uZDQ2MGNiY2FiY2ZlIDEwMDY0NAotLS0gYS9hcmNoL3g4Ni9rZXJuZWwvcGFyYXZpcnRf cGF0Y2hfMzIuYworKysgYi9hcmNoL3g4Ni9rZXJuZWwvcGFyYXZpcnRfcGF0Y2hfMzIuYwpAQCAt NywxMCArNywxMCBAQCBERUZfTkFUSVZFKGlycSwgaXJxX2VuYWJsZSwgInN0aSIpOwogREVGX05B VElWRShpcnEsIHJlc3RvcmVfZmwsICJwdXNoICVlYXg7IHBvcGYiKTsKIERFRl9OQVRJVkUoaXJx LCBzYXZlX2ZsLCAicHVzaGY7IHBvcCAlZWF4Iik7CiBERUZfTkFUSVZFKGNwdSwgaXJldCwgImly ZXQiKTsKLSNlbmRpZgogREVGX05BVElWRShtbXUsIHJlYWRfY3IyLCAibW92ICVjcjIsICVlYXgi KTsKIERFRl9OQVRJVkUobW11LCB3cml0ZV9jcjMsICJtb3YgJWVheCwgJWNyMyIpOwogREVGX05B VElWRShtbXUsIHJlYWRfY3IzLCAibW92ICVjcjMsICVlYXgiKTsKKyNlbmRpZgogCiAjaWYgZGVm aW5lZChDT05GSUdfUEFSQVZJUlRfU1BJTkxPQ0tTKQogREVGX05BVElWRShsb2NrLCBxdWV1ZWRf c3Bpbl91bmxvY2ssICJtb3ZiICQwLCAoJWVheCkiKTsKQEAgLTQ5LDEwICs0OSwxMCBAQCB1bnNp Z25lZCBuYXRpdmVfcGF0Y2godTggdHlwZSwgdm9pZCAqaWJ1ZiwgdW5zaWduZWQgbG9uZyBhZGRy LCB1bnNpZ25lZCBsZW4pCiAJCVBBVENIX1NJVEUoaXJxLCByZXN0b3JlX2ZsKTsKIAkJUEFUQ0hf U0lURShpcnEsIHNhdmVfZmwpOwogCQlQQVRDSF9TSVRFKGNwdSwgaXJldCk7Ci0jZW5kaWYKIAkJ UEFUQ0hfU0lURShtbXUsIHJlYWRfY3IyKTsKIAkJUEFUQ0hfU0lURShtbXUsIHJlYWRfY3IzKTsK IAkJUEFUQ0hfU0lURShtbXUsIHdyaXRlX2NyMyk7CisjZW5kaWYKICNpZiBkZWZpbmVkKENPTkZJ R19QQVJBVklSVF9TUElOTE9DS1MpCiAJCWNhc2UgUEFSQVZJUlRfUEFUQ0gobG9jay5xdWV1ZWRf c3Bpbl91bmxvY2spOgogCQkJaWYgKHB2X2lzX25hdGl2ZV9zcGluX3VubG9jaygpKSB7CmRpZmYg LS1naXQgYS9hcmNoL3g4Ni9rZXJuZWwvcGFyYXZpcnRfcGF0Y2hfNjQuYyBiL2FyY2gveDg2L2tl cm5lbC9wYXJhdmlydF9wYXRjaF82NC5jCmluZGV4IGIwMDkzNzk2M2EwZi4uNWFkNWJjZGE5ZGM2 IDEwMDY0NAotLS0gYS9hcmNoL3g4Ni9rZXJuZWwvcGFyYXZpcnRfcGF0Y2hfNjQuYworKysgYi9h cmNoL3g4Ni9rZXJuZWwvcGFyYXZpcnRfcGF0Y2hfNjQuYwpAQCAtOCwxMSArOCw5IEBAIERFRl9O QVRJVkUoaXJxLCBpcnFfZGlzYWJsZSwgImNsaSIpOwogREVGX05BVElWRShpcnEsIGlycV9lbmFi bGUsICJzdGkiKTsKIERFRl9OQVRJVkUoaXJxLCByZXN0b3JlX2ZsLCAicHVzaHEgJXJkaTsgcG9w ZnEiKTsKIERFRl9OQVRJVkUoaXJxLCBzYXZlX2ZsLCAicHVzaGZxOyBwb3BxICVyYXgiKTsKLSNl bmRpZgogREVGX05BVElWRShtbXUsIHJlYWRfY3IyLCAibW92cSAlY3IyLCAlcmF4Iik7CiBERUZf TkFUSVZFKG1tdSwgcmVhZF9jcjMsICJtb3ZxICVjcjMsICVyYXgiKTsKIERFRl9OQVRJVkUobW11 LCB3cml0ZV9jcjMsICJtb3ZxICVyZGksICVjcjMiKTsKLSNpZmRlZiBDT05GSUdfUEFSQVZJUlRf WFhMCiBERUZfTkFUSVZFKGNwdSwgd2JpbnZkLCAid2JpbnZkIik7CiAKIERFRl9OQVRJVkUoY3B1 LCB1c2VyZ3Nfc3lzcmV0NjQsICJzd2FwZ3M7IHN5c3JldHEiKTsKQEAgLTYxLDEwICs1OSwxMCBA QCB1bnNpZ25lZCBuYXRpdmVfcGF0Y2godTggdHlwZSwgdm9pZCAqaWJ1ZiwgdW5zaWduZWQgbG9u ZyBhZGRyLCB1bnNpZ25lZCBsZW4pCiAJCVBBVENIX1NJVEUoY3B1LCB1c2VyZ3Nfc3lzcmV0NjQp OwogCQlQQVRDSF9TSVRFKGNwdSwgc3dhcGdzKTsKIAkJUEFUQ0hfU0lURShjcHUsIHdiaW52ZCk7 Ci0jZW5kaWYKIAkJUEFUQ0hfU0lURShtbXUsIHJlYWRfY3IyKTsKIAkJUEFUQ0hfU0lURShtbXUs IHJlYWRfY3IzKTsKIAkJUEFUQ0hfU0lURShtbXUsIHdyaXRlX2NyMyk7CisjZW5kaWYKICNpZiBk ZWZpbmVkKENPTkZJR19QQVJBVklSVF9TUElOTE9DS1MpCiAJCWNhc2UgUEFSQVZJUlRfUEFUQ0go bG9jay5xdWV1ZWRfc3Bpbl91bmxvY2spOgogCQkJaWYgKHB2X2lzX25hdGl2ZV9zcGluX3VubG9j aygpKSB7Ci0tIAoyLjE2LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9q ZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVu LWRldmVs