From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christophe Leroy Subject: Re: [PATCH V4 26/26] mm/mmap: Drop ARCH_HAS_VM_GET_PAGE_PROT Date: Mon, 27 Jun 2022 05:48:28 +0000 Message-ID: <2d761420-7546-9843-7253-c9b20fd84580@csgroup.eu> References: <20220624044339.1533882-1-anshuman.khandual@arm.com> <20220624044339.1533882-27-anshuman.khandual@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=csgroup.eu; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BSmNx7QjmjM/mu8a7/c7tMJQcW84zZmxECc8eWiL9Is=; b=FrT6RAbhbcMegbf+treJrC8C7+zo7/QG0n0a+JJJHxcfPSyRFnxgFXzCYEYCEmngRTxTM8GhJ+rQcbJSF0xxfo4NQ9xkgDerR+V6AgXQvZn9s8y8cnJ5n6sTmh1YQI4pE9DVmMkwdEMyAsZlpBHWqiZp82smv0wEuH+umaNS+SYttVfeuorKPrUvI47dF0J6fb1fpKEXRQQVKHLU2/0Nh1K0hDiOcIIFxBx9icAVihMNT1vU2YmiEyRYZzQLbfoaS0/MbVKekjttDACCQtC/1mFgVCFl/SieSYaWGhN0CWjG9PtCX32PEILJlxMw45PpywOzkCn6q4T7gXImhPI5hg== In-Reply-To: <20220624044339.1533882-27-anshuman.khandual@arm.com> Content-Language: en-US Content-ID: <490526373C8A7749BC120FE1C3B61058@FRAP264.PROD.OUTLOOK.COM> List-ID: To: Anshuman Khandual , "linux-mm@kvack.org" Cc: "hch@infradead.org" , Andrew Morton , "linuxppc-dev@lists.ozlabs.org" , "sparclinux@vger.kernel.org" , "x86@kernel.org" , "openrisc@lists.librecores.org" , "linux-xtensa@linux-xtensa.org" , "linux-csky@vger.kernel.org" , "linux-hexagon@vger.kernel.org" , "linux-parisc@vger.kernel.org" , "linux-alpha@vger.kernel.org" , "linux-riscv@lists.infradead.org" , "linux-s390@vger.kernel.org" , "linux-ia64@vger.kernel.org" DQoNCkxlIDI0LzA2LzIwMjIgw6AgMDY6NDMsIEFuc2h1bWFuIEtoYW5kdWFsIGEgw6ljcml0wqA6 DQo+IE5vdyBhbGwgdGhlIHBsYXRmb3JtcyBlbmFibGUgQVJDSF9IQVNfR0VUX1BBR0VfUFJPVC4g VGhleSBkZWZpbmUgYW5kIGV4cG9ydA0KPiBvd24gdm1fZ2V0X3BhZ2VfcHJvdCgpIHdoZXRoZXIg Y3VzdG9tIG9yIHN0YW5kYXJkIERFQ0xBUkVfVk1fR0VUX1BBR0VfUFJPVC4NCj4gSGVuY2UgdGhl cmUgaXMgbm8gbmVlZCBmb3IgZGVmYXVsdCBnZW5lcmljIGZhbGxiYWNrIGZvciB2bV9nZXRfcGFn ZV9wcm90KCkuDQo+IEp1c3QgZHJvcCB0aGlzIGZhbGxiYWNrIGFuZCBhbHNvIEFSQ0hfSEFTX0dF VF9QQUdFX1BST1QgbWVjaGFuaXNtLg0KPiANCj4gQ2M6IEFuZHJldyBNb3J0b24gPGFrcG1AbGlu dXgtZm91bmRhdGlvbi5vcmc+DQo+IENjOiBsaW51eC1tbUBrdmFjay5vcmcNCj4gQ2M6IGxpbnV4 LWtlcm5lbEB2Z2VyLmtlcm5lbC5vcmcNCj4gU2lnbmVkLW9mZi1ieTogQW5zaHVtYW4gS2hhbmR1 YWwgPGFuc2h1bWFuLmtoYW5kdWFsQGFybS5jb20+DQoNClJldmlld2VkLWJ5OiBDaHJpc3RvcGhl IExlcm95IDxjaHJpc3RvcGhlLmxlcm95QGNzZ3JvdXAuZXU+DQoNCj4gLS0tDQo+ICAgYXJjaC9h bHBoYS9LY29uZmlnICAgICAgfCAgMSAtDQo+ICAgYXJjaC9hcmMvS2NvbmZpZyAgICAgICAgfCAg MSAtDQo+ICAgYXJjaC9hcm0vS2NvbmZpZyAgICAgICAgfCAgMSAtDQo+ICAgYXJjaC9hcm02NC9L Y29uZmlnICAgICAgfCAgMSAtDQo+ICAgYXJjaC9jc2t5L0tjb25maWcgICAgICAgfCAgMSAtDQo+ ICAgYXJjaC9oZXhhZ29uL0tjb25maWcgICAgfCAgMSAtDQo+ICAgYXJjaC9pYTY0L0tjb25maWcg ICAgICAgfCAgMSAtDQo+ICAgYXJjaC9sb29uZ2FyY2gvS2NvbmZpZyAgfCAgMSAtDQo+ICAgYXJj aC9tNjhrL0tjb25maWcgICAgICAgfCAgMSAtDQo+ICAgYXJjaC9taWNyb2JsYXplL0tjb25maWcg fCAgMSAtDQo+ICAgYXJjaC9taXBzL0tjb25maWcgICAgICAgfCAgMSAtDQo+ICAgYXJjaC9uaW9z Mi9LY29uZmlnICAgICAgfCAgMSAtDQo+ICAgYXJjaC9vcGVucmlzYy9LY29uZmlnICAgfCAgMSAt DQo+ICAgYXJjaC9wYXJpc2MvS2NvbmZpZyAgICAgfCAgMSAtDQo+ICAgYXJjaC9wb3dlcnBjL0tj b25maWcgICAgfCAgMSAtDQo+ICAgYXJjaC9yaXNjdi9LY29uZmlnICAgICAgfCAgMSAtDQo+ICAg YXJjaC9zMzkwL0tjb25maWcgICAgICAgfCAgMSAtDQo+ICAgYXJjaC9zaC9LY29uZmlnICAgICAg ICAgfCAgMSAtDQo+ICAgYXJjaC9zcGFyYy9LY29uZmlnICAgICAgfCAgMSAtDQo+ICAgYXJjaC91 bS9LY29uZmlnICAgICAgICAgfCAgMSAtDQo+ICAgYXJjaC94ODYvS2NvbmZpZyAgICAgICAgfCAg MSAtDQo+ICAgYXJjaC94dGVuc2EvS2NvbmZpZyAgICAgfCAgMSAtDQo+ICAgaW5jbHVkZS9saW51 eC9tbS5oICAgICAgfCAgMyAtLS0NCj4gICBtbS9LY29uZmlnICAgICAgICAgICAgICB8ICAzIC0t LQ0KPiAgIG1tL21tYXAuYyAgICAgICAgICAgICAgIHwgMjIgLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQ0KPiAgIDI1IGZpbGVzIGNoYW5nZWQsIDUwIGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAtLWdp dCBhL2FyY2gvYWxwaGEvS2NvbmZpZyBiL2FyY2gvYWxwaGEvS2NvbmZpZw0KPiBpbmRleCBkYjFj OGIzMjk0NjEuLjdkMGQyNmI1YjNmNSAxMDA2NDQNCj4gLS0tIGEvYXJjaC9hbHBoYS9LY29uZmln DQo+ICsrKyBiL2FyY2gvYWxwaGEvS2NvbmZpZw0KPiBAQCAtMiw3ICsyLDYgQEANCj4gICBjb25m aWcgQUxQSEENCj4gICAJYm9vbA0KPiAgIAlkZWZhdWx0IHkNCj4gLQlzZWxlY3QgQVJDSF9IQVNf Vk1fR0VUX1BBR0VfUFJPVA0KPiAgIAlzZWxlY3QgQVJDSF8zMkJJVF9VU1RBVF9GX1RJTk9ERQ0K PiAgIAlzZWxlY3QgQVJDSF9NSUdIVF9IQVZFX1BDX1BBUlBPUlQNCj4gICAJc2VsZWN0IEFSQ0hf TUlHSFRfSEFWRV9QQ19TRVJJTw0KPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcmMvS2NvbmZpZyBiL2Fy Y2gvYXJjL0tjb25maWcNCj4gaW5kZXggOGJlNTZhNWQ4YTliLi45ZTM2NTMyNTNlZjIgMTAwNjQ0 DQo+IC0tLSBhL2FyY2gvYXJjL0tjb25maWcNCj4gKysrIGIvYXJjaC9hcmMvS2NvbmZpZw0KPiBA QCAtMTMsNyArMTMsNiBAQCBjb25maWcgQVJDDQo+ICAgCXNlbGVjdCBBUkNIX0hBU19TRVRVUF9E TUFfT1BTDQo+ICAgCXNlbGVjdCBBUkNIX0hBU19TWU5DX0RNQV9GT1JfQ1BVDQo+ICAgCXNlbGVj dCBBUkNIX0hBU19TWU5DX0RNQV9GT1JfREVWSUNFDQo+IC0Jc2VsZWN0IEFSQ0hfSEFTX1ZNX0dF VF9QQUdFX1BST1QNCj4gICAJc2VsZWN0IEFSQ0hfU1VQUE9SVFNfQVRPTUlDX1JNVyBpZiBBUkNf SEFTX0xMU0MNCj4gICAJc2VsZWN0IEFSQ0hfMzJCSVRfT0ZGX1QNCj4gICAJc2VsZWN0IEJVSUxE VElNRV9UQUJMRV9TT1JUDQo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9LY29uZmlnIGIvYXJjaC9h cm0vS2NvbmZpZw0KPiBpbmRleCBlMTUzYjZkNGZjNWIuLjc2MzBiYTljYjZjYyAxMDA2NDQNCj4g LS0tIGEvYXJjaC9hcm0vS2NvbmZpZw0KPiArKysgYi9hcmNoL2FybS9LY29uZmlnDQo+IEBAIC0y NCw3ICsyNCw2IEBAIGNvbmZpZyBBUk0NCj4gICAJc2VsZWN0IEFSQ0hfSEFTX1NZTkNfRE1BX0ZP Ul9DUFUgaWYgU1dJT1RMQiB8fCAhTU1VDQo+ICAgCXNlbGVjdCBBUkNIX0hBU19URUFSRE9XTl9E TUFfT1BTIGlmIE1NVQ0KPiAgIAlzZWxlY3QgQVJDSF9IQVNfVElDS19CUk9BRENBU1QgaWYgR0VO RVJJQ19DTE9DS0VWRU5UU19CUk9BRENBU1QNCj4gLQlzZWxlY3QgQVJDSF9IQVNfVk1fR0VUX1BB R0VfUFJPVA0KPiAgIAlzZWxlY3QgQVJDSF9IQVZFX0NVU1RPTV9HUElPX0gNCj4gICAJc2VsZWN0 IEFSQ0hfSEFWRV9OTUlfU0FGRV9DTVBYQ0hHIGlmIENQVV9WNyB8fCBDUFVfVjdNIHx8IENQVV9W NksNCj4gICAJc2VsZWN0IEFSQ0hfSEFTX0dDT1ZfUFJPRklMRV9BTEwNCj4gZGlmZiAtLWdpdCBh L2FyY2gvYXJtNjQvS2NvbmZpZyBiL2FyY2gvYXJtNjQvS2NvbmZpZw0KPiBpbmRleCAxNjUyYTk4 MDBlYmUuLjcwMzBiZjNmOGQ2ZiAxMDA2NDQNCj4gLS0tIGEvYXJjaC9hcm02NC9LY29uZmlnDQo+ ICsrKyBiL2FyY2gvYXJtNjQvS2NvbmZpZw0KPiBAQCAtNDUsNyArNDUsNiBAQCBjb25maWcgQVJN NjQNCj4gICAJc2VsZWN0IEFSQ0hfSEFTX1NZU0NBTExfV1JBUFBFUg0KPiAgIAlzZWxlY3QgQVJD SF9IQVNfVEVBUkRPV05fRE1BX09QUyBpZiBJT01NVV9TVVBQT1JUDQo+ICAgCXNlbGVjdCBBUkNI X0hBU19USUNLX0JST0FEQ0FTVCBpZiBHRU5FUklDX0NMT0NLRVZFTlRTX0JST0FEQ0FTVA0KPiAt CXNlbGVjdCBBUkNIX0hBU19WTV9HRVRfUEFHRV9QUk9UDQo+ICAgCXNlbGVjdCBBUkNIX0hBU19a T05FX0RNQV9TRVQgaWYgRVhQRVJUDQo+ICAgCXNlbGVjdCBBUkNIX0hBVkVfRUxGX1BST1QNCj4g ICAJc2VsZWN0IEFSQ0hfSEFWRV9OTUlfU0FGRV9DTVBYQ0hHDQo+IGRpZmYgLS1naXQgYS9hcmNo L2Nza3kvS2NvbmZpZyBiL2FyY2gvY3NreS9LY29uZmlnDQo+IGluZGV4IDU4OGI4YTljNjhlZC4u MjFkNzJiMDc4ZWVmIDEwMDY0NA0KPiAtLS0gYS9hcmNoL2Nza3kvS2NvbmZpZw0KPiArKysgYi9h cmNoL2Nza3kvS2NvbmZpZw0KPiBAQCAtNiw3ICs2LDYgQEAgY29uZmlnIENTS1kNCj4gICAJc2Vs ZWN0IEFSQ0hfSEFTX0dDT1ZfUFJPRklMRV9BTEwNCj4gICAJc2VsZWN0IEFSQ0hfSEFTX1NZTkNf RE1BX0ZPUl9DUFUNCj4gICAJc2VsZWN0IEFSQ0hfSEFTX1NZTkNfRE1BX0ZPUl9ERVZJQ0UNCj4g LQlzZWxlY3QgQVJDSF9IQVNfVk1fR0VUX1BBR0VfUFJPVA0KPiAgIAlzZWxlY3QgQVJDSF9VU0Vf QlVJTFRJTl9CU1dBUA0KPiAgIAlzZWxlY3QgQVJDSF9VU0VfUVVFVUVEX1JXTE9DS1MNCj4gICAJ c2VsZWN0IEFSQ0hfV0FOVF9GUkFNRV9QT0lOVEVSUyBpZiAhQ1BVX0NLNjEwICYmICQoY2Mtb3B0 aW9uLC1tYmFja3RyYWNlKQ0KPiBkaWZmIC0tZ2l0IGEvYXJjaC9oZXhhZ29uL0tjb25maWcgYi9h cmNoL2hleGFnb24vS2NvbmZpZw0KPiBpbmRleCBiYzRjZWVjZDA1ODguLjU0ZWFkZjI2NTE3OCAx MDA2NDQNCj4gLS0tIGEvYXJjaC9oZXhhZ29uL0tjb25maWcNCj4gKysrIGIvYXJjaC9oZXhhZ29u L0tjb25maWcNCj4gQEAgLTYsNyArNiw2IEBAIGNvbmZpZyBIRVhBR09ODQo+ICAgCWRlZl9ib29s IHkNCj4gICAJc2VsZWN0IEFSQ0hfMzJCSVRfT0ZGX1QNCj4gICAJc2VsZWN0IEFSQ0hfSEFTX1NZ TkNfRE1BX0ZPUl9ERVZJQ0UNCj4gLQlzZWxlY3QgQVJDSF9IQVNfVk1fR0VUX1BBR0VfUFJPVA0K PiAgIAlzZWxlY3QgQVJDSF9OT19QUkVFTVBUDQo+ICAgCXNlbGVjdCBETUFfR0xPQkFMX1BPT0wN Cj4gICAJIyBPdGhlciBwZW5kaW5nIHByb2plY3RzL3RvLWRvIGl0ZW1zLg0KPiBkaWZmIC0tZ2l0 IGEvYXJjaC9pYTY0L0tjb25maWcgYi9hcmNoL2lhNjQvS2NvbmZpZw0KPiBpbmRleCAwNTEwYTU3 Mzc3MTEuLmNiOTM3NjlhOWYyYSAxMDA2NDQNCj4gLS0tIGEvYXJjaC9pYTY0L0tjb25maWcNCj4g KysrIGIvYXJjaC9pYTY0L0tjb25maWcNCj4gQEAgLTEyLDcgKzEyLDYgQEAgY29uZmlnIElBNjQN Cj4gICAJc2VsZWN0IEFSQ0hfSEFTX0RNQV9NQVJLX0NMRUFODQo+ICAgCXNlbGVjdCBBUkNIX0hB U19TVFJOQ1BZX0ZST01fVVNFUg0KPiAgIAlzZWxlY3QgQVJDSF9IQVNfU1RSTkxFTl9VU0VSDQo+ IC0Jc2VsZWN0IEFSQ0hfSEFTX1ZNX0dFVF9QQUdFX1BST1QNCj4gICAJc2VsZWN0IEFSQ0hfTUlH SFRfSEFWRV9QQ19QQVJQT1JUDQo+ICAgCXNlbGVjdCBBUkNIX01JR0hUX0hBVkVfUENfU0VSSU8N Cj4gICAJc2VsZWN0IEFDUEkNCj4gZGlmZiAtLWdpdCBhL2FyY2gvbG9vbmdhcmNoL0tjb25maWcg Yi9hcmNoL2xvb25nYXJjaC9LY29uZmlnDQo+IGluZGV4IGZkMDdiOGU3NjBlZS4uMTkyMGQ1MjY1 M2I0IDEwMDY0NA0KPiAtLS0gYS9hcmNoL2xvb25nYXJjaC9LY29uZmlnDQo+ICsrKyBiL2FyY2gv bG9vbmdhcmNoL0tjb25maWcNCj4gQEAgLTksNyArOSw2IEBAIGNvbmZpZyBMT09OR0FSQ0gNCj4g ICAJc2VsZWN0IEFSQ0hfSEFTX0FDUElfVEFCTEVfVVBHUkFERQlpZiBBQ1BJDQo+ICAgCXNlbGVj dCBBUkNIX0hBU19QSFlTX1RPX0RNQQ0KPiAgIAlzZWxlY3QgQVJDSF9IQVNfUFRFX1NQRUNJQUwN Cj4gLQlzZWxlY3QgQVJDSF9IQVNfVk1fR0VUX1BBR0VfUFJPVA0KPiAgIAlzZWxlY3QgQVJDSF9I QVNfVElDS19CUk9BRENBU1QgaWYgR0VORVJJQ19DTE9DS0VWRU5UU19CUk9BRENBU1QNCj4gICAJ c2VsZWN0IEFSQ0hfSU5MSU5FX1JFQURfTE9DSyBpZiAhUFJFRU1QVElPTg0KPiAgIAlzZWxlY3Qg QVJDSF9JTkxJTkVfUkVBRF9MT0NLX0JIIGlmICFQUkVFTVBUSU9ODQo+IGRpZmYgLS1naXQgYS9h cmNoL202OGsvS2NvbmZpZyBiL2FyY2gvbTY4ay9LY29uZmlnDQo+IGluZGV4IDQ5YWEwY2YxM2U5 Ni4uOTM2Y2NlNDJhZTlhIDEwMDY0NA0KPiAtLS0gYS9hcmNoL202OGsvS2NvbmZpZw0KPiArKysg Yi9hcmNoL202OGsvS2NvbmZpZw0KPiBAQCAtNyw3ICs3LDYgQEAgY29uZmlnIE02OEsNCj4gICAJ c2VsZWN0IEFSQ0hfSEFTX0NVUlJFTlRfU1RBQ0tfUE9JTlRFUg0KPiAgIAlzZWxlY3QgQVJDSF9I QVNfRE1BX1BSRVBfQ09IRVJFTlQgaWYgSEFTX0RNQSAmJiBNTVUgJiYgIUNPTERGSVJFDQo+ICAg CXNlbGVjdCBBUkNIX0hBU19TWU5DX0RNQV9GT1JfREVWSUNFIGlmIEhBU19ETUENCj4gLQlzZWxl Y3QgQVJDSF9IQVNfVk1fR0VUX1BBR0VfUFJPVA0KPiAgIAlzZWxlY3QgQVJDSF9IQVZFX05NSV9T QUZFX0NNUFhDSEcgaWYgUk1XX0lOU05TDQo+ICAgCXNlbGVjdCBBUkNIX01JR0hUX0hBVkVfUENf UEFSUE9SVCBpZiBJU0ENCj4gICAJc2VsZWN0IEFSQ0hfTk9fUFJFRU1QVCBpZiAhQ09MREZJUkUN Cj4gZGlmZiAtLWdpdCBhL2FyY2gvbWljcm9ibGF6ZS9LY29uZmlnIGIvYXJjaC9taWNyb2JsYXpl L0tjb25maWcNCj4gaW5kZXggMTVmOTFiYThhMGM0Li44Y2Y0MjlhZDFjODQgMTAwNjQ0DQo+IC0t LSBhL2FyY2gvbWljcm9ibGF6ZS9LY29uZmlnDQo+ICsrKyBiL2FyY2gvbWljcm9ibGF6ZS9LY29u ZmlnDQo+IEBAIC03LDcgKzcsNiBAQCBjb25maWcgTUlDUk9CTEFaRQ0KPiAgIAlzZWxlY3QgQVJD SF9IQVNfR0NPVl9QUk9GSUxFX0FMTA0KPiAgIAlzZWxlY3QgQVJDSF9IQVNfU1lOQ19ETUFfRk9S X0NQVQ0KPiAgIAlzZWxlY3QgQVJDSF9IQVNfU1lOQ19ETUFfRk9SX0RFVklDRQ0KPiAtCXNlbGVj dCBBUkNIX0hBU19WTV9HRVRfUEFHRV9QUk9UDQo+ICAgCXNlbGVjdCBBUkNIX01JR0hUX0hBVkVf UENfUEFSUE9SVA0KPiAgIAlzZWxlY3QgQVJDSF9XQU5UX0lQQ19QQVJTRV9WRVJTSU9ODQo+ICAg CXNlbGVjdCBCVUlMRFRJTUVfVEFCTEVfU09SVA0KPiBkaWZmIC0tZ2l0IGEvYXJjaC9taXBzL0tj b25maWcgYi9hcmNoL21pcHMvS2NvbmZpZw0KPiBpbmRleCBkMGI3ZWIxMWVjODEuLmRiMDlkNDVk NTllYyAxMDA2NDQNCj4gLS0tIGEvYXJjaC9taXBzL0tjb25maWcNCj4gKysrIGIvYXJjaC9taXBz L0tjb25maWcNCj4gQEAgLTE0LDcgKzE0LDYgQEAgY29uZmlnIE1JUFMNCj4gICAJc2VsZWN0IEFS Q0hfSEFTX1NUUk5MRU5fVVNFUg0KPiAgIAlzZWxlY3QgQVJDSF9IQVNfVElDS19CUk9BRENBU1Qg aWYgR0VORVJJQ19DTE9DS0VWRU5UU19CUk9BRENBU1QNCj4gICAJc2VsZWN0IEFSQ0hfSEFTX1VC U0FOX1NBTklUSVpFX0FMTA0KPiAtCXNlbGVjdCBBUkNIX0hBU19WTV9HRVRfUEFHRV9QUk9UDQo+ ICAgCXNlbGVjdCBBUkNIX0hBU19HQ09WX1BST0ZJTEVfQUxMDQo+ICAgCXNlbGVjdCBBUkNIX0tF RVBfTUVNQkxPQ0sNCj4gICAJc2VsZWN0IEFSQ0hfU1VQUE9SVFNfVVBST0JFUw0KPiBkaWZmIC0t Z2l0IGEvYXJjaC9uaW9zMi9LY29uZmlnIGIvYXJjaC9uaW9zMi9LY29uZmlnDQo+IGluZGV4IGUw NDU5ZGZmZDIxOC4uNDE2N2YxZWI0Y2Q4IDEwMDY0NA0KPiAtLS0gYS9hcmNoL25pb3MyL0tjb25m aWcNCj4gKysrIGIvYXJjaC9uaW9zMi9LY29uZmlnDQo+IEBAIC02LDcgKzYsNiBAQCBjb25maWcg TklPUzINCj4gICAJc2VsZWN0IEFSQ0hfSEFTX1NZTkNfRE1BX0ZPUl9DUFUNCj4gICAJc2VsZWN0 IEFSQ0hfSEFTX1NZTkNfRE1BX0ZPUl9ERVZJQ0UNCj4gICAJc2VsZWN0IEFSQ0hfSEFTX0RNQV9T RVRfVU5DQUNIRUQNCj4gLQlzZWxlY3QgQVJDSF9IQVNfVk1fR0VUX1BBR0VfUFJPVA0KPiAgIAlz ZWxlY3QgQVJDSF9OT19TV0FQDQo+ICAgCXNlbGVjdCBDT01NT05fQ0xLDQo+ICAgCXNlbGVjdCBU SU1FUl9PRg0KPiBkaWZmIC0tZ2l0IGEvYXJjaC9vcGVucmlzYy9LY29uZmlnIGIvYXJjaC9vcGVu cmlzYy9LY29uZmlnDQo+IGluZGV4IGZlMGRmYjUwZWI4Ni4uZTgxNGRmNGM0ODNjIDEwMDY0NA0K PiAtLS0gYS9hcmNoL29wZW5yaXNjL0tjb25maWcNCj4gKysrIGIvYXJjaC9vcGVucmlzYy9LY29u ZmlnDQo+IEBAIC0xMCw3ICsxMCw2IEBAIGNvbmZpZyBPUEVOUklTQw0KPiAgIAlzZWxlY3QgQVJD SF9IQVNfRE1BX1NFVF9VTkNBQ0hFRA0KPiAgIAlzZWxlY3QgQVJDSF9IQVNfRE1BX0NMRUFSX1VO Q0FDSEVEDQo+ICAgCXNlbGVjdCBBUkNIX0hBU19TWU5DX0RNQV9GT1JfREVWSUNFDQo+IC0Jc2Vs ZWN0IEFSQ0hfSEFTX1ZNX0dFVF9QQUdFX1BST1QNCj4gICAJc2VsZWN0IENPTU1PTl9DTEsNCj4g ICAJc2VsZWN0IE9GDQo+ICAgCXNlbGVjdCBPRl9FQVJMWV9GTEFUVFJFRQ0KPiBkaWZmIC0tZ2l0 IGEvYXJjaC9wYXJpc2MvS2NvbmZpZyBiL2FyY2gvcGFyaXNjL0tjb25maWcNCj4gaW5kZXggOTBl YWJjODQ2ZjgxLi41ZjI0NDhkYzVhMmIgMTAwNjQ0DQo+IC0tLSBhL2FyY2gvcGFyaXNjL0tjb25m aWcNCj4gKysrIGIvYXJjaC9wYXJpc2MvS2NvbmZpZw0KPiBAQCAtMTEsNyArMTEsNiBAQCBjb25m aWcgUEFSSVNDDQo+ICAgCXNlbGVjdCBBUkNIX0hBU19FTEZfUkFORE9NSVpFDQo+ICAgCXNlbGVj dCBBUkNIX0hBU19TVFJJQ1RfS0VSTkVMX1JXWA0KPiAgIAlzZWxlY3QgQVJDSF9IQVNfVUJTQU5f U0FOSVRJWkVfQUxMDQo+IC0Jc2VsZWN0IEFSQ0hfSEFTX1ZNX0dFVF9QQUdFX1BST1QNCj4gICAJ c2VsZWN0IEFSQ0hfSEFTX1BURV9TUEVDSUFMDQo+ICAgCXNlbGVjdCBBUkNIX05PX1NHX0NIQUlO DQo+ICAgCXNlbGVjdCBBUkNIX1NVUFBPUlRTX0hVR0VUTEJGUyBpZiBQQTIwDQo+IGRpZmYgLS1n aXQgYS9hcmNoL3Bvd2VycGMvS2NvbmZpZyBiL2FyY2gvcG93ZXJwYy9LY29uZmlnDQo+IGluZGV4 IDEwMzVkMTcyYzdkZC4uMjUwYjg2NThiMmQ0IDEwMDY0NA0KPiAtLS0gYS9hcmNoL3Bvd2VycGMv S2NvbmZpZw0KPiArKysgYi9hcmNoL3Bvd2VycGMvS2NvbmZpZw0KPiBAQCAtMTQwLDcgKzE0MCw2 IEBAIGNvbmZpZyBQUEMNCj4gICAJc2VsZWN0IEFSQ0hfSEFTX1RJQ0tfQlJPQURDQVNUCQlpZiBH RU5FUklDX0NMT0NLRVZFTlRTX0JST0FEQ0FTVA0KPiAgIAlzZWxlY3QgQVJDSF9IQVNfVUFDQ0VT U19GTFVTSENBQ0hFDQo+ICAgCXNlbGVjdCBBUkNIX0hBU19VQlNBTl9TQU5JVElaRV9BTEwNCj4g LQlzZWxlY3QgQVJDSF9IQVNfVk1fR0VUX1BBR0VfUFJPVA0KPiAgIAlzZWxlY3QgQVJDSF9IQVZF X05NSV9TQUZFX0NNUFhDSEcNCj4gICAJc2VsZWN0IEFSQ0hfS0VFUF9NRU1CTE9DSw0KPiAgIAlz ZWxlY3QgQVJDSF9NSUdIVF9IQVZFX1BDX1BBUlBPUlQNCj4gZGlmZiAtLWdpdCBhL2FyY2gvcmlz Y3YvS2NvbmZpZyBiL2FyY2gvcmlzY3YvS2NvbmZpZw0KPiBpbmRleCA1ODMzODlkNGU0M2EuLjMy ZmZlZjlmNmU1YiAxMDA2NDQNCj4gLS0tIGEvYXJjaC9yaXNjdi9LY29uZmlnDQo+ICsrKyBiL2Fy Y2gvcmlzY3YvS2NvbmZpZw0KPiBAQCAtMzIsNyArMzIsNiBAQCBjb25maWcgUklTQ1YNCj4gICAJ c2VsZWN0IEFSQ0hfSEFTX1NUUklDVF9NT0RVTEVfUldYIGlmIE1NVSAmJiAhWElQX0tFUk5FTA0K PiAgIAlzZWxlY3QgQVJDSF9IQVNfVElDS19CUk9BRENBU1QgaWYgR0VORVJJQ19DTE9DS0VWRU5U U19CUk9BRENBU1QNCj4gICAJc2VsZWN0IEFSQ0hfSEFTX1VCU0FOX1NBTklUSVpFX0FMTA0KPiAt CXNlbGVjdCBBUkNIX0hBU19WTV9HRVRfUEFHRV9QUk9UDQo+ICAgCXNlbGVjdCBBUkNIX09QVElP TkFMX0tFUk5FTF9SV1ggaWYgQVJDSF9IQVNfU1RSSUNUX0tFUk5FTF9SV1gNCj4gICAJc2VsZWN0 IEFSQ0hfT1BUSU9OQUxfS0VSTkVMX1JXWF9ERUZBVUxUDQo+ICAgCXNlbGVjdCBBUkNIX1NUQUNL V0FMSw0KPiBkaWZmIC0tZ2l0IGEvYXJjaC9zMzkwL0tjb25maWcgYi9hcmNoL3MzOTAvS2NvbmZp Zw0KPiBpbmRleCBjNDQ4MTM3N2NhODMuLjkxYzBiODBhOGJmMCAxMDA2NDQNCj4gLS0tIGEvYXJj aC9zMzkwL0tjb25maWcNCj4gKysrIGIvYXJjaC9zMzkwL0tjb25maWcNCj4gQEAgLTgxLDcgKzgx LDYgQEAgY29uZmlnIFMzOTANCj4gICAJc2VsZWN0IEFSQ0hfSEFTX1NZU0NBTExfV1JBUFBFUg0K PiAgIAlzZWxlY3QgQVJDSF9IQVNfVUJTQU5fU0FOSVRJWkVfQUxMDQo+ICAgCXNlbGVjdCBBUkNI X0hBU19WRFNPX0RBVEENCj4gLQlzZWxlY3QgQVJDSF9IQVNfVk1fR0VUX1BBR0VfUFJPVA0KPiAg IAlzZWxlY3QgQVJDSF9IQVZFX05NSV9TQUZFX0NNUFhDSEcNCj4gICAJc2VsZWN0IEFSQ0hfSU5M SU5FX1JFQURfTE9DSw0KPiAgIAlzZWxlY3QgQVJDSF9JTkxJTkVfUkVBRF9MT0NLX0JIDQo+IGRp ZmYgLS1naXQgYS9hcmNoL3NoL0tjb25maWcgYi9hcmNoL3NoL0tjb25maWcNCj4gaW5kZXggOTFm M2VhMzI1Mzg4Li41ZjIyMGU5MDNlNWEgMTAwNjQ0DQo+IC0tLSBhL2FyY2gvc2gvS2NvbmZpZw0K PiArKysgYi9hcmNoL3NoL0tjb25maWcNCj4gQEAgLTEyLDcgKzEyLDYgQEAgY29uZmlnIFNVUEVS SA0KPiAgIAlzZWxlY3QgQVJDSF9IQVNfR0NPVl9QUk9GSUxFX0FMTA0KPiAgIAlzZWxlY3QgQVJD SF9IQVNfUFRFX1NQRUNJQUwNCj4gICAJc2VsZWN0IEFSQ0hfSEFTX1RJQ0tfQlJPQURDQVNUIGlm IEdFTkVSSUNfQ0xPQ0tFVkVOVFNfQlJPQURDQVNUDQo+IC0Jc2VsZWN0IEFSQ0hfSEFTX1ZNX0dF VF9QQUdFX1BST1QNCj4gICAJc2VsZWN0IEFSQ0hfSElCRVJOQVRJT05fUE9TU0lCTEUgaWYgTU1V DQo+ICAgCXNlbGVjdCBBUkNIX01JR0hUX0hBVkVfUENfUEFSUE9SVA0KPiAgIAlzZWxlY3QgQVJD SF9XQU5UX0lQQ19QQVJTRV9WRVJTSU9ODQo+IGRpZmYgLS1naXQgYS9hcmNoL3NwYXJjL0tjb25m aWcgYi9hcmNoL3NwYXJjL0tjb25maWcNCj4gaW5kZXggMDlmODY4NjEzYTRkLi45YzFjY2U3NDk1 M2EgMTAwNjQ0DQo+IC0tLSBhL2FyY2gvc3BhcmMvS2NvbmZpZw0KPiArKysgYi9hcmNoL3NwYXJj L0tjb25maWcNCj4gQEAgLTEzLDcgKzEzLDYgQEAgY29uZmlnIDY0QklUDQo+ICAgY29uZmlnIFNQ QVJDDQo+ICAgCWJvb2wNCj4gICAJZGVmYXVsdCB5DQo+IC0Jc2VsZWN0IEFSQ0hfSEFTX1ZNX0dF VF9QQUdFX1BST1QNCj4gICAJc2VsZWN0IEFSQ0hfTUlHSFRfSEFWRV9QQ19QQVJQT1JUIGlmIFNQ QVJDNjQgJiYgUENJDQo+ICAgCXNlbGVjdCBBUkNIX01JR0hUX0hBVkVfUENfU0VSSU8NCj4gICAJ c2VsZWN0IERNQV9PUFMNCj4gZGlmZiAtLWdpdCBhL2FyY2gvdW0vS2NvbmZpZyBiL2FyY2gvdW0v S2NvbmZpZw0KPiBpbmRleCA3ZmI0MzY1NGU1YjUuLjRlYzIyZTE1NmEyZSAxMDA2NDQNCj4gLS0t IGEvYXJjaC91bS9LY29uZmlnDQo+ICsrKyBiL2FyY2gvdW0vS2NvbmZpZw0KPiBAQCAtMTAsNyAr MTAsNiBAQCBjb25maWcgVU1MDQo+ICAgCXNlbGVjdCBBUkNIX0hBU19LQ09WDQo+ICAgCXNlbGVj dCBBUkNIX0hBU19TVFJOQ1BZX0ZST01fVVNFUg0KPiAgIAlzZWxlY3QgQVJDSF9IQVNfU1RSTkxF Tl9VU0VSDQo+IC0Jc2VsZWN0IEFSQ0hfSEFTX1ZNX0dFVF9QQUdFX1BST1QNCj4gICAJc2VsZWN0 IEFSQ0hfTk9fUFJFRU1QVA0KPiAgIAlzZWxlY3QgSEFWRV9BUkNIX0FVRElUU1lTQ0FMTA0KPiAg IAlzZWxlY3QgSEFWRV9BUkNIX1NFQ0NPTVBfRklMVEVSDQo+IGRpZmYgLS1naXQgYS9hcmNoL3g4 Ni9LY29uZmlnIGIvYXJjaC94ODYvS2NvbmZpZw0KPiBpbmRleCBiZTBiOTVlNTFkZjYuLjg0MWU0 ODQzZDBjNCAxMDA2NDQNCj4gLS0tIGEvYXJjaC94ODYvS2NvbmZpZw0KPiArKysgYi9hcmNoL3g4 Ni9LY29uZmlnDQo+IEBAIC05NCw3ICs5NCw2IEBAIGNvbmZpZyBYODYNCj4gICAJc2VsZWN0IEFS Q0hfSEFTX1NZTkNfQ09SRV9CRUZPUkVfVVNFUk1PREUNCj4gICAJc2VsZWN0IEFSQ0hfSEFTX1NZ U0NBTExfV1JBUFBFUg0KPiAgIAlzZWxlY3QgQVJDSF9IQVNfVUJTQU5fU0FOSVRJWkVfQUxMDQo+ IC0Jc2VsZWN0IEFSQ0hfSEFTX1ZNX0dFVF9QQUdFX1BST1QNCj4gICAJc2VsZWN0IEFSQ0hfSEFT X0RFQlVHX1dYDQo+ICAgCXNlbGVjdCBBUkNIX0hBU19aT05FX0RNQV9TRVQgaWYgRVhQRVJUDQo+ ICAgCXNlbGVjdCBBUkNIX0hBVkVfTk1JX1NBRkVfQ01QWENIRw0KPiBkaWZmIC0tZ2l0IGEvYXJj aC94dGVuc2EvS2NvbmZpZyBiL2FyY2gveHRlbnNhL0tjb25maWcNCj4gaW5kZXggNGMwZDgzNTIw ZmYxLi4wYjBmMDE3MmNjZWQgMTAwNjQ0DQo+IC0tLSBhL2FyY2gveHRlbnNhL0tjb25maWcNCj4g KysrIGIvYXJjaC94dGVuc2EvS2NvbmZpZw0KPiBAQCAtMTEsNyArMTEsNiBAQCBjb25maWcgWFRF TlNBDQo+ICAgCXNlbGVjdCBBUkNIX0hBU19ETUFfU0VUX1VOQ0FDSEVEIGlmIE1NVQ0KPiAgIAlz ZWxlY3QgQVJDSF9IQVNfU1RSTkNQWV9GUk9NX1VTRVIgaWYgIUtBU0FODQo+ICAgCXNlbGVjdCBB UkNIX0hBU19TVFJOTEVOX1VTRVINCj4gLQlzZWxlY3QgQVJDSF9IQVNfVk1fR0VUX1BBR0VfUFJP VA0KPiAgIAlzZWxlY3QgQVJDSF9VU0VfTUVNVEVTVA0KPiAgIAlzZWxlY3QgQVJDSF9VU0VfUVVF VUVEX1JXTE9DS1MNCj4gICAJc2VsZWN0IEFSQ0hfVVNFX1FVRVVFRF9TUElOTE9DS1MNCj4gZGlm ZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvbW0uaCBiL2luY2x1ZGUvbGludXgvbW0uaA0KPiBpbmRl eCA3MGQ5MDBmNmRmNDMuLmQ3NzZhODZiZTFkNCAxMDA2NDQNCj4gLS0tIGEvaW5jbHVkZS9saW51 eC9tbS5oDQo+ICsrKyBiL2luY2x1ZGUvbGludXgvbW0uaA0KPiBAQCAtNDI0LDkgKzQyNCw2IEBA IGV4dGVybiB1bnNpZ25lZCBpbnQga29ianNpemUoY29uc3Qgdm9pZCAqb2JqcCk7DQo+ICAgICog bWFwcGluZyBmcm9tIHRoZSBjdXJyZW50bHkgYWN0aXZlIHZtX2ZsYWdzIHByb3RlY3Rpb24gYml0 cyAodGhlDQo+ICAgICogbG93IGZvdXIgYml0cykgdG8gYSBwYWdlIHByb3RlY3Rpb24gbWFzay4u DQo+ICAgICovDQo+IC0jaWZuZGVmIENPTkZJR19BUkNIX0hBU19WTV9HRVRfUEFHRV9QUk9UDQo+ IC1leHRlcm4gcGdwcm90X3QgcHJvdGVjdGlvbl9tYXBbMTZdOw0KPiAtI2VuZGlmDQo+ICAgDQo+ ICAgI2RlZmluZSBERUNMQVJFX1ZNX0dFVF9QQUdFX1BST1QJCQkJCVwNCj4gICBwZ3Byb3RfdCB2 bV9nZXRfcGFnZV9wcm90KHVuc2lnbmVkIGxvbmcgdm1fZmxhZ3MpCQkJXA0KPiBkaWZmIC0tZ2l0 IGEvbW0vS2NvbmZpZyBiL21tL0tjb25maWcNCj4gaW5kZXggMTY5ZTY0MTkyZTQ4Li5mNDdkMjU3 YTA1M2IgMTAwNjQ0DQo+IC0tLSBhL21tL0tjb25maWcNCj4gKysrIGIvbW0vS2NvbmZpZw0KPiBA QCAtOTUxLDkgKzk1MSw2IEBAIGNvbmZpZyBBUkNIX0hBU19DVVJSRU5UX1NUQUNLX1BPSU5URVIN Cj4gICAJICByZWdpc3RlciBhbGlhcyBuYW1lZCAiY3VycmVudF9zdGFja19wb2ludGVyIiwgdGhp cyBjb25maWcgY2FuIGJlDQo+ICAgCSAgc2VsZWN0ZWQuDQo+ICAgDQo+IC1jb25maWcgQVJDSF9I QVNfVk1fR0VUX1BBR0VfUFJPVA0KPiAtCWJvb2wNCj4gLQ0KPiAgIGNvbmZpZyBBUkNIX0hBU19Q VEVfREVWTUFQDQo+ICAgCWJvb2wNCj4gICANCj4gZGlmZiAtLWdpdCBhL21tL21tYXAuYyBiL21t L21tYXAuYw0KPiBpbmRleCA0M2RiM2JkNDkwNzEuLjM1NTdmZTgzZDEyNCAxMDA2NDQNCj4gLS0t IGEvbW0vbW1hcC5jDQo+ICsrKyBiL21tL21tYXAuYw0KPiBAQCAtMTAxLDI4ICsxMDEsNiBAQCBz dGF0aWMgdm9pZCB1bm1hcF9yZWdpb24oc3RydWN0IG1tX3N0cnVjdCAqbW0sDQo+ICAgICoJCQkJ CQkJCXc6IChubykgbm8NCj4gICAgKgkJCQkJCQkJeDogKHllcykgeWVzDQo+ICAgICovDQo+IC0j aWZuZGVmIENPTkZJR19BUkNIX0hBU19WTV9HRVRfUEFHRV9QUk9UDQo+IC1wZ3Byb3RfdCBwcm90 ZWN0aW9uX21hcFsxNl0gX19yb19hZnRlcl9pbml0ID0gew0KPiAtCVtWTV9OT05FXQkJCQkJPSBf X1AwMDAsDQo+IC0JW1ZNX1JFQURdCQkJCQk9IF9fUDAwMSwNCj4gLQlbVk1fV1JJVEVdCQkJCQk9 IF9fUDAxMCwNCj4gLQlbVk1fV1JJVEUgfCBWTV9SRUFEXQkJCQk9IF9fUDAxMSwNCj4gLQlbVk1f RVhFQ10JCQkJCT0gX19QMTAwLA0KPiAtCVtWTV9FWEVDIHwgVk1fUkVBRF0JCQkJPSBfX1AxMDEs DQo+IC0JW1ZNX0VYRUMgfCBWTV9XUklURV0JCQkJPSBfX1AxMTAsDQo+IC0JW1ZNX0VYRUMgfCBW TV9XUklURSB8IFZNX1JFQURdCQkJPSBfX1AxMTEsDQo+IC0JW1ZNX1NIQVJFRF0JCQkJCT0gX19T MDAwLA0KPiAtCVtWTV9TSEFSRUQgfCBWTV9SRUFEXQkJCQk9IF9fUzAwMSwNCj4gLQlbVk1fU0hB UkVEIHwgVk1fV1JJVEVdCQkJCT0gX19TMDEwLA0KPiAtCVtWTV9TSEFSRUQgfCBWTV9XUklURSB8 IFZNX1JFQURdCQk9IF9fUzAxMSwNCj4gLQlbVk1fU0hBUkVEIHwgVk1fRVhFQ10JCQkJPSBfX1Mx MDAsDQo+IC0JW1ZNX1NIQVJFRCB8IFZNX0VYRUMgfCBWTV9SRUFEXQkJCT0gX19TMTAxLA0KPiAt CVtWTV9TSEFSRUQgfCBWTV9FWEVDIHwgVk1fV1JJVEVdCQk9IF9fUzExMCwNCj4gLQlbVk1fU0hB UkVEIHwgVk1fRVhFQyB8IFZNX1dSSVRFIHwgVk1fUkVBRF0JPSBfX1MxMTENCj4gLX07DQo+IC1E RUNMQVJFX1ZNX0dFVF9QQUdFX1BST1QNCj4gLSNlbmRpZgkvKiBDT05GSUdfQVJDSF9IQVNfVk1f R0VUX1BBR0VfUFJPVCAqLw0KPiAtDQo+ICAgc3RhdGljIHBncHJvdF90IHZtX3BncHJvdF9tb2Rp ZnkocGdwcm90X3Qgb2xkcHJvdCwgdW5zaWduZWQgbG9uZyB2bV9mbGFncykNCj4gICB7DQo+ICAg CXJldHVybiBwZ3Byb3RfbW9kaWZ5KG9sZHByb3QsIHZtX2dldF9wYWdlX3Byb3Qodm1fZmxhZ3Mp KTs=