From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: [PATCH v3 01/16] x86: change name of parameter for various invlpg functions Date: Tue, 4 Sep 2018 17:15:18 +0100 Message-ID: <20180904161533.11575-2-wei.liu2@citrix.com> References: <20180904161533.11575-1-wei.liu2@citrix.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 1fxDzP-0003Fe-JZ for xen-devel@lists.xenproject.org; Tue, 04 Sep 2018 16:15:39 +0000 In-Reply-To: <20180904161533.11575-1-wei.liu2@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.xenproject.org Cc: Kevin Tian , Wei Liu , Suravee Suthikulpanit , Jun Nakajima , Andrew Cooper , Tim Deegan , George Dunlap , Jan Beulich , Boris Ostrovsky , Brian Woods List-Id: xen-devel@lists.xenproject.org VGhleSBhbGwgaW5jb3JyZWN0bHkgbmFtZWQgYSBwYXJhbWV0ZXIgdmlydHVhbCBhZGRyZXNzIHdo aWxlIGl0IHNob3VsZApoYXZlIGJlZW4gbGluZWFyIGFkZHJlc3MuCgpSZXF1ZXN0ZWQtYnk6IEFu ZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+ClNpZ25lZC1vZmYtYnk6IFdl aSBMaXUgPHdlaS5saXUyQGNpdHJpeC5jb20+CkFja2VkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxp Y2hAc3VzZS5jb20+ClJldmlld2VkLWJ5OiBLZXZpbiBUaWFuIDxrZXZpbi50aWFuQGludGVsLmNv bT4KQWNrZWQtYnk6IEJvcmlzIE9zdHJvdnNreSA8Ym9yaXMub3N0cm92c2t5QG9yYWNsZS5jb20+ Ci0tLQogeGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmMgICAgICAgICB8IDE0ICsrKysrKystLS0t LS0tCiB4ZW4vYXJjaC94ODYvaHZtL3ZteC92bXguYyAgICAgICAgIHwgMTIgKysrKysrLS0tLS0t CiB4ZW4vYXJjaC94ODYvbW0uYyAgICAgICAgICAgICAgICAgIHwgMTAgKysrKystLS0tLQogeGVu L2FyY2gveDg2L21tL2hhcC9oYXAuYyAgICAgICAgICB8ICAyICstCiB4ZW4vYXJjaC94ODYvbW0v c2hhZG93L211bHRpLmMgICAgIHwgMTQgKysrKysrKy0tLS0tLS0KIHhlbi9hcmNoL3g4Ni9tbS9z aGFkb3cvbm9uZS5jICAgICAgfCAgMiArLQogeGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vaHZtLmgg ICAgICB8ICA2ICsrKy0tLQogeGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vc3ZtL2FzaWQuaCB8ICA0 ICsrLS0KIHhlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3N2bS9zdm0uaCAgfCAgNCArKy0tCiB4ZW4v aW5jbHVkZS9hc20teDg2L3BhZ2luZy5oICAgICAgIHwgIDMgKystCiAxMCBmaWxlcyBjaGFuZ2Vk LCAzNiBpbnNlcnRpb25zKCspLCAzNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJj aC94ODYvaHZtL3N2bS9zdm0uYyBiL3hlbi9hcmNoL3g4Ni9odm0vc3ZtL3N2bS5jCmluZGV4IDBi MDZlMmZmMTEuLjM0ZDU1YjQ5MzggMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9odm0vc3ZtL3N2 bS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9odm0vc3ZtL3N2bS5jCkBAIC0yNDg4LDE4ICsyNDg4LDE4 IEBAIHN0YXRpYyB2b2lkIHN2bV92bWV4aXRfZG9faW52YWxpZGF0ZV9jYWNoZShzdHJ1Y3QgY3B1 X3VzZXJfcmVncyAqcmVncykKIH0KIAogc3RhdGljIHZvaWQgc3ZtX2ludmxwZ2FfaW50ZXJjZXB0 KAotICAgIHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25nIHZhZGRyLCB1aW50MzJfdCBhc2lk KQorICAgIHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25nIGxpbmVhciwgdWludDMyX3QgYXNp ZCkKIHsKLSAgICBzdm1faW52bHBnYSh2YWRkciwKKyAgICBzdm1faW52bHBnYShsaW5lYXIsCiAg ICAgICAgICAgICAgICAgKGFzaWQgPT0gMCkKICAgICAgICAgICAgICAgICA/IHYtPmFyY2guaHZt Lm4xYXNpZC5hc2lkCiAgICAgICAgICAgICAgICAgOiB2Y3B1X25lc3RlZGh2bSh2KS5udl9uMmFz aWQuYXNpZCk7CiB9CiAKLXN0YXRpYyB2b2lkIHN2bV9pbnZscGdfaW50ZXJjZXB0KHVuc2lnbmVk IGxvbmcgdmFkZHIpCitzdGF0aWMgdm9pZCBzdm1faW52bHBnX2ludGVyY2VwdCh1bnNpZ25lZCBs b25nIGxpbmVhcikKIHsKLSAgICBIVk1UUkFDRV9MT05HXzJEKElOVkxQRywgMCwgVFJDX1BBUl9M T05HKHZhZGRyKSk7Ci0gICAgcGFnaW5nX2ludmxwZyhjdXJyZW50LCB2YWRkcik7CisgICAgSFZN VFJBQ0VfTE9OR18yRChJTlZMUEcsIDAsIFRSQ19QQVJfTE9ORyhsaW5lYXIpKTsKKyAgICBwYWdp bmdfaW52bHBnKGN1cnJlbnQsIGxpbmVhcik7CiB9CiAKIHN0YXRpYyBib29sIGlzX2ludmxwZyhj b25zdCBzdHJ1Y3QgeDg2X2VtdWxhdGVfc3RhdGUgKnN0YXRlLApAQCAtMjUxMiw5ICsyNTEyLDkg QEAgc3RhdGljIGJvb2wgaXNfaW52bHBnKGNvbnN0IHN0cnVjdCB4ODZfZW11bGF0ZV9zdGF0ZSAq c3RhdGUsCiAgICAgICAgICAgIChleHQgJiA3KSA9PSA3OwogfQogCi1zdGF0aWMgdm9pZCBzdm1f aW52bHBnKHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25nIHZhZGRyKQorc3RhdGljIHZvaWQg c3ZtX2ludmxwZyhzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgbG9uZyBsaW5lYXIpCiB7Ci0gICAg c3ZtX2FzaWRfZ19pbnZscGcodiwgdmFkZHIpOworICAgIHN2bV9hc2lkX2dfaW52bHBnKHYsIGxp bmVhcik7CiB9CiAKIHN0YXRpYyBib29sIHN2bV9nZXRfcGVuZGluZ19ldmVudChzdHJ1Y3QgdmNw dSAqdiwgc3RydWN0IHg4Nl9ldmVudCAqaW5mbykKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9o dm0vdm14L3ZteC5jIGIveGVuL2FyY2gveDg2L2h2bS92bXgvdm14LmMKaW5kZXggZTkyNmIwYjI4 ZS4uYjJlMWEyODAzOCAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2h2bS92bXgvdm14LmMKKysr IGIveGVuL2FyY2gveDg2L2h2bS92bXgvdm14LmMKQEAgLTc1LDcgKzc1LDcgQEAgc3RhdGljIHZv aWQgdm14X3diaW52ZF9pbnRlcmNlcHQodm9pZCk7CiBzdGF0aWMgdm9pZCB2bXhfZnB1X2RpcnR5 X2ludGVyY2VwdCh2b2lkKTsKIHN0YXRpYyBpbnQgdm14X21zcl9yZWFkX2ludGVyY2VwdCh1bnNp Z25lZCBpbnQgbXNyLCB1aW50NjRfdCAqbXNyX2NvbnRlbnQpOwogc3RhdGljIGludCB2bXhfbXNy X3dyaXRlX2ludGVyY2VwdCh1bnNpZ25lZCBpbnQgbXNyLCB1aW50NjRfdCBtc3JfY29udGVudCk7 Ci1zdGF0aWMgdm9pZCB2bXhfaW52bHBnKHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25nIHZh ZGRyKTsKK3N0YXRpYyB2b2lkIHZteF9pbnZscGcoc3RydWN0IHZjcHUgKnYsIHVuc2lnbmVkIGxv bmcgbGluZWFyKTsKIAogLyogVmFsdWVzIGZvciBkb21haW4ncyAtPmFyY2guaHZtX2RvbWFpbi5w aV9vcHMuZmxhZ3MuICovCiAjZGVmaW5lIFBJX0NTV19GUk9NICgxdSA8PCAwKQpAQCAtMjU5NSwx NiArMjU5NSwxNiBAQCBzdGF0aWMgdm9pZCB2bXhfZHJfYWNjZXNzKHVuc2lnbmVkIGxvbmcgZXhp dF9xdWFsaWZpY2F0aW9uLAogICAgIHZteF91cGRhdGVfY3B1X2V4ZWNfY29udHJvbCh2KTsKIH0K IAotc3RhdGljIHZvaWQgdm14X2ludmxwZ19pbnRlcmNlcHQodW5zaWduZWQgbG9uZyB2YWRkcikK K3N0YXRpYyB2b2lkIHZteF9pbnZscGdfaW50ZXJjZXB0KHVuc2lnbmVkIGxvbmcgbGluZWFyKQog ewotICAgIEhWTVRSQUNFX0xPTkdfMkQoSU5WTFBHLCAvKmludmxwZ2E9Ki8gMCwgVFJDX1BBUl9M T05HKHZhZGRyKSk7Ci0gICAgcGFnaW5nX2ludmxwZyhjdXJyZW50LCB2YWRkcik7CisgICAgSFZN VFJBQ0VfTE9OR18yRChJTlZMUEcsIC8qaW52bHBnYT0qLyAwLCBUUkNfUEFSX0xPTkcobGluZWFy KSk7CisgICAgcGFnaW5nX2ludmxwZyhjdXJyZW50LCBsaW5lYXIpOwogfQogCi1zdGF0aWMgdm9p ZCB2bXhfaW52bHBnKHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25nIHZhZGRyKQorc3RhdGlj IHZvaWQgdm14X2ludmxwZyhzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgbG9uZyBsaW5lYXIpCiB7 CiAgICAgaWYgKCBjcHVfaGFzX3ZteF92cGlkICkKLSAgICAgICAgdnBpZF9zeW5jX3ZjcHVfZ3Zh KHYsIHZhZGRyKTsKKyAgICAgICAgdnBpZF9zeW5jX3ZjcHVfZ3ZhKHYsIGxpbmVhcik7CiB9CiAK IHN0YXRpYyBpbnQgdm14X3ZtZnVuY19pbnRlcmNlcHQoc3RydWN0IGNwdV91c2VyX3JlZ3MgKnJl Z3MpCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvbW0uYyBiL3hlbi9hcmNoL3g4Ni9tbS5jCmlu ZGV4IDg0OTc5ZjI4ZDUuLjQwOTgxNGNlMGEgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS5j CisrKyBiL3hlbi9hcmNoL3g4Ni9tbS5jCkBAIC01NzkzLDE5ICs1NzkzLDE5IEBAIGNvbnN0IHVu c2lnbmVkIGxvbmcgKl9faW5pdCBnZXRfcGxhdGZvcm1fYmFkcGFnZXModW5zaWduZWQgaW50ICph cnJheV9zaXplKQogICAgIHJldHVybiBiYWRfcGFnZXM7CiB9CiAKLXZvaWQgcGFnaW5nX2ludmxw ZyhzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgbG9uZyB2YSkKK3ZvaWQgcGFnaW5nX2ludmxwZyhz dHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgbG9uZyBsaW5lYXIpCiB7Ci0gICAgaWYgKCAhaXNfY2Fu b25pY2FsX2FkZHJlc3ModmEpICkKKyAgICBpZiAoICFpc19jYW5vbmljYWxfYWRkcmVzcyhsaW5l YXIpICkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKCBwYWdpbmdfbW9kZV9lbmFibGVkKHYt PmRvbWFpbikgJiYKLSAgICAgICAgICFwYWdpbmdfZ2V0X2hvc3Rtb2RlKHYpLT5pbnZscGcodiwg dmEpICkKKyAgICAgICAgICFwYWdpbmdfZ2V0X2hvc3Rtb2RlKHYpLT5pbnZscGcodiwgbGluZWFy KSApCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICggaXNfcHZfdmNwdSh2KSApCi0gICAgICAg IGZsdXNoX3RsYl9vbmVfbG9jYWwodmEpOworICAgICAgICBmbHVzaF90bGJfb25lX2xvY2FsKGxp bmVhcik7CiAgICAgZWxzZQotICAgICAgICBodm1faW52bHBnKHYsIHZhKTsKKyAgICAgICAgaHZt X2ludmxwZyh2LCBsaW5lYXIpOwogfQogCiAvKiBCdWlsZCBhIDMyYml0IFBTRSBwYWdlIHRhYmxl IHVzaW5nIDRNQiBwYWdlcy4gKi8KZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9tbS9oYXAvaGFw LmMgYi94ZW4vYXJjaC94ODYvbW0vaGFwL2hhcC5jCmluZGV4IGM1M2Q3NmNmNjkuLjNkNjUxYjk0 YzMgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9oYXAvaGFwLmMKKysrIGIveGVuL2FyY2gv eDg2L21tL2hhcC9oYXAuYwpAQCAtNjUwLDcgKzY1MCw3IEBAIHN0YXRpYyBpbnQgaGFwX3BhZ2Vf ZmF1bHQoc3RydWN0IHZjcHUgKnYsIHVuc2lnbmVkIGxvbmcgdmEsCiAgKiBzaG91bGQgbm90IGJl IGludGVyY2VwdGluZyBpdC4gIEhvd2V2ZXIsIHdlIG5lZWQgdG8gY29ycmVjdGx5IGhhbmRsZQog ICogZ2V0dGluZyBoZXJlIGZyb20gaW5zdHJ1Y3Rpb24gZW11bGF0aW9uLgogICovCi1zdGF0aWMg Ym9vbF90IGhhcF9pbnZscGcoc3RydWN0IHZjcHUgKnYsIHVuc2lnbmVkIGxvbmcgdmEpCitzdGF0 aWMgYm9vbF90IGhhcF9pbnZscGcoc3RydWN0IHZjcHUgKnYsIHVuc2lnbmVkIGxvbmcgbGluZWFy KQogewogICAgIC8qCiAgICAgICogRW11bGF0ZSBJTlZMUEdBOgpkaWZmIC0tZ2l0IGEveGVuL2Fy Y2gveDg2L21tL3NoYWRvdy9tdWx0aS5jIGIveGVuL2FyY2gveDg2L21tL3NoYWRvdy9tdWx0aS5j CmluZGV4IDdiYjZmNDcxNTUuLmJiYTU3M2FlODcgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9t bS9zaGFkb3cvbXVsdGkuYworKysgYi94ZW4vYXJjaC94ODYvbW0vc2hhZG93L211bHRpLmMKQEAg LTM1NDksNyArMzU0OSw3IEBAIHByb3BhZ2F0ZToKICAqIGluc3RydWN0aW9uIHNob3VsZCBiZSBp c3N1ZWQgb24gdGhlIGhhcmR3YXJlLCBvciBmYWxzZSBpZiBpdCdzIHNhZmUgbm90CiAgKiB0byBk byBzby4KICAqLwotc3RhdGljIGJvb2wgc2hfaW52bHBnKHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25l ZCBsb25nIHZhKQorc3RhdGljIGJvb2wgc2hfaW52bHBnKHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25l ZCBsb25nIGxpbmVhcikKIHsKICAgICBtZm5fdCBzbDFtZm47CiAgICAgc2hhZG93X2wyZV90IHNs MmU7CkBAIC0zNTcyLDE0ICszNTcyLDE0IEBAIHN0YXRpYyBib29sIHNoX2ludmxwZyhzdHJ1Y3Qg dmNwdSAqdiwgdW5zaWduZWQgbG9uZyB2YSkKICAgICB7CiAgICAgICAgIHNoYWRvd19sM2VfdCBz bDNlOwogICAgICAgICBpZiAoICEoc2hhZG93X2w0ZV9nZXRfZmxhZ3MoCi0gICAgICAgICAgICAg ICAgICAgc2hfbGluZWFyX2w0X3RhYmxlKHYpW3NoYWRvd19sNF9saW5lYXJfb2Zmc2V0KHZhKV0p CisgICAgICAgICAgICAgICAgICAgc2hfbGluZWFyX2w0X3RhYmxlKHYpW3NoYWRvd19sNF9saW5l YXJfb2Zmc2V0KGxpbmVhcildKQogICAgICAgICAgICAgICAgJiBfUEFHRV9QUkVTRU5UKSApCiAg ICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgIC8qIFRoaXMgbXVzdCBzdGlsbCBiZSBh IGNvcHktZnJvbS11c2VyIGJlY2F1c2Ugd2UgZG9uJ3QgaGF2ZSB0aGUKICAgICAgICAgICogcGFn aW5nIGxvY2ssIGFuZCB0aGUgaGlnaGVyLWxldmVsIHNoYWRvd3MgbWlnaHQgZGlzYXBwZWFyCiAg ICAgICAgICAqIHVuZGVyIG91ciBmZWV0LiAqLwogICAgICAgICBpZiAoIF9fY29weV9mcm9tX3Vz ZXIoJnNsM2UsIChzaF9saW5lYXJfbDNfdGFibGUodikKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKyBzaGFkb3dfbDNfbGluZWFyX29mZnNldCh2YSkpLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIHNoYWRvd19sM19saW5lYXJfb2Zmc2V0KGxp bmVhcikpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mIChzbDNlKSkgIT0g MCApCiAgICAgICAgIHsKICAgICAgICAgICAgIHBlcmZjX2luY3Ioc2hhZG93X2ludmxwZ19mYXVs dCk7CkBAIC0zNTg5LDcgKzM1ODksNyBAQCBzdGF0aWMgYm9vbCBzaF9pbnZscGcoc3RydWN0IHZj cHUgKnYsIHVuc2lnbmVkIGxvbmcgdmEpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAg fQogI2Vsc2UgLyogU0hBRE9XX1BBR0lOR19MRVZFTFMgPT0gMyAqLwotICAgIGlmICggIShsM2Vf Z2V0X2ZsYWdzKHYtPmFyY2gucGFnaW5nLnNoYWRvdy5sM3RhYmxlW3NoYWRvd19sM19saW5lYXJf b2Zmc2V0KHZhKV0pCisgICAgaWYgKCAhKGwzZV9nZXRfZmxhZ3Modi0+YXJjaC5wYWdpbmcuc2hh ZG93LmwzdGFibGVbc2hhZG93X2wzX2xpbmVhcl9vZmZzZXQobGluZWFyKV0pCiAgICAgICAgICAg ICYgX1BBR0VfUFJFU0VOVCkgKQogICAgICAgICAvLyBubyBuZWVkIHRvIGZsdXNoIGFueXRoaW5n IGlmIHRoZXJlJ3Mgbm8gU0wyLi4uCiAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTM1OTgsNyAr MzU5OCw3IEBAIHN0YXRpYyBib29sIHNoX2ludmxwZyhzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQg bG9uZyB2YSkKICAgICAvKiBUaGlzIG11c3Qgc3RpbGwgYmUgYSBjb3B5LWZyb20tdXNlciBiZWNh dXNlIHdlIGRvbid0IGhhdmUgdGhlIHNoYWRvdwogICAgICAqIGxvY2ssIGFuZCB0aGUgaGlnaGVy LWxldmVsIHNoYWRvd3MgbWlnaHQgZGlzYXBwZWFyIHVuZGVyIG91ciBmZWV0LiAqLwogICAgIGlm ICggX19jb3B5X2Zyb21fdXNlcigmc2wyZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgc2hf bGluZWFyX2wyX3RhYmxlKHYpICsgc2hhZG93X2wyX2xpbmVhcl9vZmZzZXQodmEpLAorICAgICAg ICAgICAgICAgICAgICAgICAgICBzaF9saW5lYXJfbDJfdGFibGUodikgKyBzaGFkb3dfbDJfbGlu ZWFyX29mZnNldChsaW5lYXIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YgKHNs MmUpKSAhPSAwICkKICAgICB7CiAgICAgICAgIHBlcmZjX2luY3Ioc2hhZG93X2ludmxwZ19mYXVs dCk7CkBAIC0zNjQyLDcgKzM2NDIsNyBAQCBzdGF0aWMgYm9vbCBzaF9pbnZscGcoc3RydWN0IHZj cHUgKnYsIHVuc2lnbmVkIGxvbmcgdmEpCiAgICAgICAgICAgICAgKiBmZWV0LiAqLwogICAgICAg ICAgICAgaWYgKCBfX2NvcHlfZnJvbV91c2VyKCZzbDJlLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHNoX2xpbmVhcl9sMl90YWJsZSh2KQotICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICsgc2hhZG93X2wyX2xpbmVhcl9vZmZzZXQodmEpLAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICsgc2hhZG93X2wyX2xpbmVhcl9vZmZzZXQobGluZWFyKSwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YgKHNsMmUpKSAhPSAwICkK ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICBwZXJmY19pbmNyKHNoYWRvd19pbnZscGdf ZmF1bHQpOwpAQCAtMzY2NCw3ICszNjY0LDcgQEAgc3RhdGljIGJvb2wgc2hfaW52bHBnKHN0cnVj dCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25nIHZhKQogICAgICAgICAgICAgICAgICAgICAgICAgJiYg cGFnZV9pc19vdXRfb2Zfc3luYyhwZykgKSApCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg ICAgc2hhZG93X2wxZV90ICpzbDE7Ci0gICAgICAgICAgICAgICAgc2wxID0gc2hfbGluZWFyX2wx X3RhYmxlKHYpICsgc2hhZG93X2wxX2xpbmVhcl9vZmZzZXQodmEpOworICAgICAgICAgICAgICAg IHNsMSA9IHNoX2xpbmVhcl9sMV90YWJsZSh2KSArIHNoYWRvd19sMV9saW5lYXJfb2Zmc2V0KGxp bmVhcik7CiAgICAgICAgICAgICAgICAgLyogUmVtb3ZlIHRoZSBzaGFkb3cgZW50cnkgdGhhdCBt YXBzIHRoaXMgVkEgKi8KICAgICAgICAgICAgICAgICAodm9pZCkgc2hhZG93X3NldF9sMWUoZCwg c2wxLCBzaGFkb3dfbDFlX2VtcHR5KCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHAybV9pbnZhbGlkLCBzbDFtZm4pOwpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L21t L3NoYWRvdy9ub25lLmMgYi94ZW4vYXJjaC94ODYvbW0vc2hhZG93L25vbmUuYwppbmRleCBhOGM5 NjA0Y2RmLi40ZGU2NDVhNDMzIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvbW0vc2hhZG93L25v bmUuYworKysgYi94ZW4vYXJjaC94ODYvbW0vc2hhZG93L25vbmUuYwpAQCAtMzcsNyArMzcsNyBA QCBzdGF0aWMgaW50IF9wYWdlX2ZhdWx0KHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25nIHZh LAogICAgIHJldHVybiAwOwogfQogCi1zdGF0aWMgYm9vbCBfaW52bHBnKHN0cnVjdCB2Y3B1ICp2 LCB1bnNpZ25lZCBsb25nIHZhKQorc3RhdGljIGJvb2wgX2ludmxwZyhzdHJ1Y3QgdmNwdSAqdiwg dW5zaWduZWQgbG9uZyBsaW5lYXIpCiB7CiAgICAgQVNTRVJUX1VOUkVBQ0hBQkxFKCk7CiAgICAg cmV0dXJuIHRydWU7CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L2h2bS9odm0uaCBi L3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL2h2bS5oCmluZGV4IDEzMmU2MmI0ZjYuLjZiMGUwODg3 NTAgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL2h2bS5oCisrKyBiL3hlbi9p bmNsdWRlL2FzbS14ODYvaHZtL2h2bS5oCkBAIC0xNjAsNyArMTYwLDcgQEAgc3RydWN0IGh2bV9m dW5jdGlvbl90YWJsZSB7CiAKICAgICBpbnQgICgqZXZlbnRfcGVuZGluZykoc3RydWN0IHZjcHUg KnYpOwogICAgIGJvb2wgKCpnZXRfcGVuZGluZ19ldmVudCkoc3RydWN0IHZjcHUgKnYsIHN0cnVj dCB4ODZfZXZlbnQgKmluZm8pOwotICAgIHZvaWQgKCppbnZscGcpKHN0cnVjdCB2Y3B1ICp2LCB1 bnNpZ25lZCBsb25nIHZhZGRyKTsKKyAgICB2b2lkICgqaW52bHBnKShzdHJ1Y3QgdmNwdSAqdiwg dW5zaWduZWQgbG9uZyBsaW5lYXIpOwogCiAgICAgaW50ICAoKmNwdV91cF9wcmVwYXJlKSh1bnNp Z25lZCBpbnQgY3B1KTsKICAgICB2b2lkICgqY3B1X2RlYWQpKHVuc2lnbmVkIGludCBjcHUpOwpA QCAtNDU0LDkgKzQ1NCw5IEBAIHN0YXRpYyBpbmxpbmUgaW50IGh2bV9ldmVudF9wZW5kaW5nKHN0 cnVjdCB2Y3B1ICp2KQogICAgIHJldHVybiBodm1fZnVuY3MuZXZlbnRfcGVuZGluZyh2KTsKIH0K IAotc3RhdGljIGlubGluZSB2b2lkIGh2bV9pbnZscGcoc3RydWN0IHZjcHUgKnYsIHVuc2lnbmVk IGxvbmcgdmEpCitzdGF0aWMgaW5saW5lIHZvaWQgaHZtX2ludmxwZyhzdHJ1Y3QgdmNwdSAqdiwg dW5zaWduZWQgbG9uZyBsaW5lYXIpCiB7Ci0gICAgaHZtX2Z1bmNzLmludmxwZyh2LCB2YSk7Cisg ICAgaHZtX2Z1bmNzLmludmxwZyh2LCBsaW5lYXIpOwogfQogCiAvKiBUaGVzZSBiaXRzIGluIENS NCBhcmUgb3duZWQgYnkgdGhlIGhvc3QuICovCmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20t eDg2L2h2bS9zdm0vYXNpZC5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vc3ZtL2FzaWQuaApp bmRleCA2MGNiYjdiODgxLi4wZTVlYzNhYjc4IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20t eDg2L2h2bS9zdm0vYXNpZC5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3N2bS9hc2lk LmgKQEAgLTI1LDExICsyNSwxMSBAQAogdm9pZCBzdm1fYXNpZF9pbml0KGNvbnN0IHN0cnVjdCBj cHVpbmZvX3g4NiAqYyk7CiB2b2lkIHN2bV9hc2lkX2hhbmRsZV92bXJ1bih2b2lkKTsKIAotc3Rh dGljIGlubGluZSB2b2lkIHN2bV9hc2lkX2dfaW52bHBnKHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25l ZCBsb25nIGdfdmFkZHIpCitzdGF0aWMgaW5saW5lIHZvaWQgc3ZtX2FzaWRfZ19pbnZscGcoc3Ry dWN0IHZjcHUgKnYsIHVuc2lnbmVkIGxvbmcgZ19saW5lYXIpCiB7CiAjaWYgMAogICAgIC8qIE9w dGltaXphdGlvbj8gKi8KLSAgICBzdm1faW52bHBnYShnX3ZhZGRyLCB2LT5hcmNoLmh2bS5zdm0u dm1jYi0+Z3Vlc3RfYXNpZCk7CisgICAgc3ZtX2ludmxwZ2EoZ19saW5lYXIsIHYtPmFyY2guaHZt LnN2bS52bWNiLT5ndWVzdF9hc2lkKTsKICNlbmRpZgogCiAgICAgLyogU2FmZSBmYWxsYmFjay4g VGFrZSBhIG5ldyBBU0lELiAqLwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0v c3ZtL3N2bS5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vc3ZtL3N2bS5oCmluZGV4IDRlNWUx NDI5MTAuLjgxNjYwNDZhNmQgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3N2 bS9zdm0uaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L2h2bS9zdm0vc3ZtLmgKQEAgLTQwLDEz ICs0MCwxMyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgc3ZtX3Ztc2F2ZV9wYShwYWRkcl90IHZtY2Ip CiAgICAgICAgIDogOiAiYSIgKHZtY2IpIDogIm1lbW9yeSIgKTsKIH0KIAotc3RhdGljIGlubGlu ZSB2b2lkIHN2bV9pbnZscGdhKHVuc2lnbmVkIGxvbmcgdmFkZHIsIHVpbnQzMl90IGFzaWQpCitz dGF0aWMgaW5saW5lIHZvaWQgc3ZtX2ludmxwZ2EodW5zaWduZWQgbG9uZyBsaW5lYXIsIHVpbnQz Ml90IGFzaWQpCiB7CiAgICAgYXNtIHZvbGF0aWxlICgKICAgICAgICAgIi5ieXRlIDB4MGYsMHgw MSwweGRmIgogICAgICAgICA6IC8qIG91dHB1dCAqLwogICAgICAgICA6IC8qIGlucHV0ICovCi0g ICAgICAgICJhIiAodmFkZHIpLCAiYyIgKGFzaWQpKTsKKyAgICAgICAgImEiIChsaW5lYXIpLCAi YyIgKGFzaWQpKTsKIH0KIAogdW5zaWduZWQgbG9uZyAqc3ZtX21zcmJpdCh1bnNpZ25lZCBsb25n ICptc3JfYml0bWFwLCB1aW50MzJfdCBtc3IpOwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNt LXg4Ni9wYWdpbmcuaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcGFnaW5nLmgKaW5kZXggZjQ0MGUz ZTUzYy4uYjUxZTE3MDlkMyAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9wYWdpbmcu aAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L3BhZ2luZy5oCkBAIC0xMTAsNyArMTEwLDggQEAg c3RydWN0IHNoYWRvd19wYWdpbmdfbW9kZSB7CiBzdHJ1Y3QgcGFnaW5nX21vZGUgewogICAgIGlu dCAgICAgICAgICAgKCpwYWdlX2ZhdWx0ICAgICAgICAgICAgKShzdHJ1Y3QgdmNwdSAqdiwgdW5z aWduZWQgbG9uZyB2YSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgc3RydWN0IGNwdV91c2VyX3JlZ3MgKnJlZ3MpOwotICAgIGJvb2wgICAgICAgICAgKCppbnZs cGcgICAgICAgICAgICAgICAgKShzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgbG9uZyB2YSk7Cisg ICAgYm9vbCAgICAgICAgICAoKmludmxwZyAgICAgICAgICAgICAgICApKHN0cnVjdCB2Y3B1ICp2 LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBs b25nIGxpbmVhcik7CiAgICAgdW5zaWduZWQgbG9uZyAoKmd2YV90b19nZm4gICAgICAgICAgICAp KHN0cnVjdCB2Y3B1ICp2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIHZhLAotLSAKMi4xMS4wCgoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcg bGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9q ZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==