Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp3311698pxb; Mon, 9 Nov 2020 08:01:07 -0800 (PST) X-Google-Smtp-Source: ABdhPJxFM81nFm+E70/kvfLvloTOasPJzwU3PoptWsvdnyUnLnFmINVgb93Al6xbMgB1jAX6brDc X-Received: by 2002:a17:906:415a:: with SMTP id l26mr15234755ejk.442.1604937667110; Mon, 09 Nov 2020 08:01:07 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1604937667; cv=none; d=google.com; s=arc-20160816; b=krz5ZMiHNwrJWle4NVu+4sVHY3Xgptr047X6Ghj+zwM9uP9sJSCnr3525+WWP5e8vH 6lLYuVw2RdzG8fuyduDGnnltv76biHN1J61rSxLn9qxvpInzjwFzwN8Uk3+mtouN1VkF iy3Uw9UEgl7itJrrAMwy5JeqYRwUQR21Pd5hpBvCW7SJaNyAvF/Ibx48pp9CPlOsvJ3K yUjCMb+2APWqEQ+IIhYpOdBGJLhkPxY+nEFwb48WWFZRNHE+axOXIDJuhrxzC2fCcgMp wxkwj6yLOMc4IQGEceAmm5NrwpqqNUO5LxUYiKPMyJ76P6Jt840pjq4Jbok5AuHc6hhI 7Hyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :content-language:accept-language:in-reply-to:references:message-id :date:thread-index:thread-topic:subject:cc:to:from; bh=8iuyBWdtFyMMAFm7OEbXVDgfwYklgXVkuFDplltZdqk=; b=hTfgd14Hj3jZ5vtju0mNNVgPVkdQrLJoNYmRTsSp2Ni0BXv2LWOPNhzE1a2vyLCn16 uOtH1Bp7/uu5cRtIYE0/ifz1TqRTstPxM26hzNujwTkmctXUgO3pNmmf5XUEPJfJhQb1 fTkJr+hpgyIlOXHprXX58xyNj5pyJYzUPngQoevd9VyWxXXMjV1E/yYfoyNCNsjVL803 /9/O8mQ8lg9//vL/KiPJZkcAq1VeuFI6cnDiaKrTU8dTqNHBGgduoBjpwvK4wHZomUu0 SwuMwFyjykcojkFpaLWU4bIdGyHYWX/gjTJxGqj816NB4903OofdS6/SxLs7vomMPHMN f1Lg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id b11si5646346ejz.50.2020.11.09.08.00.42; Mon, 09 Nov 2020 08:01:07 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729785AbgKIP7M (ORCPT + 99 others); Mon, 9 Nov 2020 10:59:12 -0500 Received: from frasgout.his.huawei.com ([185.176.79.56]:2078 "EHLO frasgout.his.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726410AbgKIP7L (ORCPT ); Mon, 9 Nov 2020 10:59:11 -0500 Received: from fraeml712-chm.china.huawei.com (unknown [172.18.147.206]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4CVFxs6cNGz67JvS; Mon, 9 Nov 2020 23:57:37 +0800 (CST) Received: from lhreml721-chm.china.huawei.com (10.201.108.72) by fraeml712-chm.china.huawei.com (10.206.15.61) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1913.5; Mon, 9 Nov 2020 16:59:09 +0100 Received: from lhreml715-chm.china.huawei.com (10.201.108.66) by lhreml721-chm.china.huawei.com (10.201.108.72) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1913.5; Mon, 9 Nov 2020 15:59:08 +0000 Received: from lhreml715-chm.china.huawei.com ([10.201.108.66]) by lhreml715-chm.china.huawei.com ([10.201.108.66]) with mapi id 15.01.1913.007; Mon, 9 Nov 2020 15:59:08 +0000 From: Shiju Jose To: James Morse , "linux-kernel@vger.kernel.org" , "bp@alien8.de" , "tony.luck@intel.com" , "rjw@rjwysocki.net" , "lenb@kernel.org" , "rrichter@marvell.com" CC: "linux-edac@vger.kernel.org" , "linux-acpi@vger.kernel.org" , Linuxarm , Jonathan Cameron Subject: RE: [RFC PATCH 1/4] ACPI: PPTT: Fix for a high level cache node detected in the low level Thread-Topic: [RFC PATCH 1/4] ACPI: PPTT: Fix for a high level cache node detected in the low level Thread-Index: AQHWs5sq/xqD0yNHmEmvqya0QqywYqm7gESAgAQwVqA= Date: Mon, 9 Nov 2020 15:59:07 +0000 Message-ID: <201a4a5fe2e8429f94482ebabf1f90c1@huawei.com> References: <20201105174233.1146-1-shiju.jose@huawei.com> <20201105174233.1146-2-shiju.jose@huawei.com> <495c17fa-98fe-c79b-5676-ab1f0b50afba@arm.com> In-Reply-To: <495c17fa-98fe-c79b-5676-ab1f0b50afba@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.47.25.110] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-CFilter-Loop: Reflected Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org SGkgSmFtZXMsDQoNClRoYW5rcyBmb3IgdGhlIGZlZWRiYWNrLg0KDQo+LS0tLS1PcmlnaW5hbCBN ZXNzYWdlLS0tLS0NCj5Gcm9tOiBKYW1lcyBNb3JzZSBbbWFpbHRvOmphbWVzLm1vcnNlQGFybS5j b21dDQo+U2VudDogMDYgTm92ZW1iZXIgMjAyMCAxOTozNA0KPlRvOiBTaGlqdSBKb3NlIDxzaGlq dS5qb3NlQGh1YXdlaS5jb20+OyBsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnOw0KPmJwQGFs aWVuOC5kZTsgdG9ueS5sdWNrQGludGVsLmNvbTsgcmp3QHJqd3lzb2NraS5uZXQ7IGxlbmJAa2Vy bmVsLm9yZzsNCj5ycmljaHRlckBtYXJ2ZWxsLmNvbQ0KPkNjOiBsaW51eC1lZGFjQHZnZXIua2Vy bmVsLm9yZzsgbGludXgtYWNwaUB2Z2VyLmtlcm5lbC5vcmc7IExpbnV4YXJtDQo+PGxpbnV4YXJt QGh1YXdlaS5jb20+OyBKb25hdGhhbiBDYW1lcm9uDQo+PGpvbmF0aGFuLmNhbWVyb25AaHVhd2Vp LmNvbT4NCj5TdWJqZWN0OiBSZTogW1JGQyBQQVRDSCAxLzRdIEFDUEk6IFBQVFQ6IEZpeCBmb3Ig YSBoaWdoIGxldmVsIGNhY2hlIG5vZGUNCj5kZXRlY3RlZCBpbiB0aGUgbG93IGxldmVsDQo+DQo+ SGkgU2hpanUsIEpvbmF0aGFuLA0KPg0KPk9uIDA1LzExLzIwMjAgMTc6NDIsIFNoaWp1IEpvc2Ug d3JvdGU6DQo+PiBGcm9tOiBKb25hdGhhbiBDYW1lcm9uIDxqb25hdGhhbi5jYW1lcm9uQGh1YXdl aS5jb20+DQo+Pg0KPj4gQWNjb3JkaW5nIHRvIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnMgb2YgdGhl IFBQVFQgZGVmaW5pdGlvbiBpbiB0aGUgQUNQSQ0KPj4gc3BlY2lmaWNhdGlvbihWNi4zKSwgYSBo aWdoIGxldmVsIGNhY2hlIG5vZGUoIEZvciBleGFtcGxlIEwyIGNhY2hlKQ0KPj4gY291bGQgYmUg cmVwcmVzZW50ZWQgc2ltdWx0YW5lb3VzbHkgYm90aCBpbiB0aGUgcHJpdmF0ZSByZXNvdXJjZSBv ZiBhDQo+PiBDUFUgbm9kZSBhbmQgdmlhIHRoZSBuZXh0X2xldmVsX29mX2NhY2hlIHBvaW50ZXIg b2YgYSBsb3cgbGV2ZWwgY2FjaGUNCj4+IG5vZGUuDQo+PiAxLiBTZWN0aW9uIDUuMi4yOS4xIFBy b2Nlc3NvciBoaWVyYXJjaHkgbm9kZSBzdHJ1Y3R1cmUgKFR5cGUgMCkgIkVhY2gNCj4+IHByb2Nl c3NvciBub2RlIGluY2x1ZGVzIGEgbGlzdCBvZiByZXNvdXJjZXMgdGhhdCBhcmUgcHJpdmF0ZSB0 byB0aGF0DQo+PiBub2RlLiBSZXNvdXJjZXMgYXJlIGRlc2NyaWJlZCBpbiBvdGhlciBQUFRUIHN0 cnVjdHVyZXMgc3VjaCBhcyBUeXBlIDENCj4+IGNhY2hlIHN0cnVjdHVyZXMuIFRoZSBwcm9jZXNz b3Igbm9kZeKAmXMgcHJpdmF0ZSByZXNvdXJjZSBsaXN0IGluY2x1ZGVzDQo+PiBhIHJlZmVyZW5j ZSB0byBlYWNoIG9mIHRoZSBzdHJ1Y3R1cmVzIHRoYXQgcmVwcmVzZW50IHByaXZhdGUgcmVzb3Vy Y2VzDQo+PiB0byBhIGdpdmVuIHByb2Nlc3NvciBub2RlLiBGb3IgZXhhbXBsZSwgYW4gU29DIGxl dmVsIHByb2Nlc3NvciBub2RlDQo+PiBtaWdodCBjb250YWluIHR3byByZWZlcmVuY2VzLCBvbmUg cG9pbnRpbmcgdG8gYSBMZXZlbCAzIGNhY2hlIHJlc291cmNlDQo+PiBhbmQgYW5vdGhlciBwb2lu dGluZyB0byBhbiBJRCBzdHJ1Y3R1cmUuIg0KPj4NCj4+IDIuIFNlY3Rpb24gNS4yLjI5LjIgQ2Fj aGUgVHlwZSBTdHJ1Y3R1cmUgLSBUeXBlIDENCj4+ICAgIEZpZ3VyZSA1LTI2IENhY2hlIFR5cGUg U3RydWN0dXJlIC0gVHlwZSAxIEV4YW1wbGUNCj4NCj4nZml4JyBpbiB0aGUgc3ViamVjdCBtYWtl cyBtZSB0d2l0Y2ggLi4uIGlzIHRoZXJlIGEgdXNlci1zcGFjZSB2aXNpYmxlIGJ1Zw0KPmJlY2F1 c2Ugb2YgdGhpcz8NCj4NCj4NCj4+IEZvciB0aGUgdXNlIGNhc2Ugb2YgY3JlYXRpbmcgRURBQyBk ZXZpY2UgYmxvY2tzIGZvciB0aGUgQ1BVIGNhY2hlcywgd2UNCj4+IG5lZWQgdG8gc2VhcmNoIGZv ciBjYWNoZSBub2RlIHR5cGVzIGluIGFsbCBsZXZlbHMgdXNpbmcNCj4+IGFjcGlfZmluZF9jYWNo ZV9ub2RlKCksIGFzIGEgcGxhdGZvcm0gaW5kZXBlbmRlbnQgc29sdXRpb24gdG8NCj4NCj5JJ20g bmVydm91cyB0byBiYXNlIHRoZSBlZGFjIHVzZXItc3BhY2UgdmlldyBvZiBjYWNoZXMgb24gc29t ZXRoaW5nIG90aGVyDQo+dGhhbiB3aGF0IGlzIGRlc2NyaWJlZCBpbiAvc3lzL2RldmljZXMvc3lz dGVtL2NwdS9jcHUwL2NhY2hlLiBUaGVzZSB0aGluZ3MNCj5oYXZlIHRvIG1hdGNoLCBvdGhlcndp c2UgdXNlci1zcGFjZSBjYW4ndCB3b3JrIG91dCB3aGljaCBjcHUncyBMMidzIGl0IHNob3VsZA0K PmFkZCB0byBnZXQgdGhlIHZhbHVlIGZvciB0aGUgcGh5c2ljYWwgY2FjaGUuDQpXaXRoIHRoaXMg Zml4IHRoZSAvc3lzL2RldmljZXMvc3lzdGVtL2VkYWMvY3B1L2NwdTAvY2FjaGVOIG1hdGNoIHdp dGggIC9zeXMvZGV2aWNlcy9zeXN0ZW0vY3B1L2NwdTAvY2FjaGUvaW5kZXhOLg0KYW5kIHRodXMg dXNlci1zcGFjZSBjb3VsZCBleHRyYWN0IGNwdSBsaXN0IGZvciB0aGUgc2hhcmVkIGNhY2hlcy4N Cg0KPg0KPkdldHRpbmcgdGhlIGRhdGEgZnJvbSBzb21ld2hlcmUgZWxzZSByaXNrcyBtYWtpbmcg dGhpcyBtb3JlIGNvbXBsaWNhdGVkLg0KPg0KPlVzaW5nIHRoZSBQUFRUIG1lYW5zIHRoaXMgd29u J3Qgd29yayBvbiAiSFBFIFNlcnZlciJzIHRoYXQgdXNlIGdoZXNfZWRhYw0KPnRvby4gSSBkb24n dCB0aGluayB3ZSBzaG91bGQgaGF2ZSBhbnkgYXJtNjQgc3BlY2lmaWMgYmVoYXZpb3VyIGhlcmUu DQo+DQo+DQo+PiByZXRyaWV2ZSB0aGUgY2FjaGUgaW5mbyBmcm9tIHRoZSBBQ1BJIFBQVFQuIFRo ZSByZWFzb24gaXMgdGhhdA0KPj4gY2FjaGVpbmZvIGluIHRoZSBkcml2ZXJzL2Jhc2UvY2FjaGVp bmZvLmMgd291bGQgbm90IGJlIHBvcHVsYXRlZCBpbg0KPj4gdGhpcyBzdGFnZS4NCj4NCj5CZWNh dXNlIGJvdGggZ2hlc19pbml0KCkgYW5kIGNhY2hlaW5mb19zeXNmc19pbml0KCkgYXJlIGRldmlj ZV9pbml0Y2FsbCgpPw0KPg0KPkNvdWxkbid0IHdlIGZpeCB0aGlzIGJ5IG1ha2luZyBnaGVzX2lu aXQoKSwgZGV2aWNlX2luaXRjYWxsX3N5bmMoKSAod2l0aCBhDQo+Y29tbWVudCBzYXlpbmcgd2hh dCBpdCBkZXBlbmRzIG9uKQ0KDQpJIGNoZWNrZWQgYnkgbWFraW5nIGdoZXNfaW5pdCgpLCBkZXZp Y2VfaW5pdGNhbGxfc3luYygpLiBUaGVuIHRoZQ0KZ2hlc19wcm9iZSgpIGFuZCBnaGVzX2VkYWNf cmVnaXN0ZXIoKSBhcmUgZ2V0dGluZw0KY2FsbGVkIGFmdGVyIGRldGVjdF9jYWNoZV9hdHRyaWJ1 dGVzKCkgb2YgYmFzZS9jYWNoZWluZm8uYyBmdW5jdGlvbiBpcyBjYWxsZWQsIA0Kd2hlcmUgcGVy X2NwdV9jYWNoZWluZm8gaXMgYWxsb2NhdGVkIGFuZCBwb3B1bGF0ZWQgZm9yIHRoZSBjcHUgb25s aW5lLiANClRodXMgY2FjaGVpbmZvIGRhdGEgaXMgYXZhaWxhYmxlIGZvciB0aGUgb25saW5lIENQ VXMuDQoNCj4NCj4NCj5JIGFncmVlIHRoaXMgbWVhbnMgZGVhbGluZyB3aXRoIGNwdWhwIGFzIHRo ZSBjYWNoZWluZm8gZGF0YSBpcyBvbmx5IGF2YWlsYWJsZQ0KPmZvciBvbmxpbmUgQ1BVcy4NCg0K RG9lcyB0aGlzIHJlcXVpcmUgdGhlIEVEQUMgZGV2aWNlIGluc3RhbmNlIGZvciBhIGNwdSBiZWNv bWUgb25saW5lL29mZmxpbmUgdG8gYmUgYWRkZWQvZGVsZXRlZA0Kb24gY3B1aHAgbm90aWZ5IGZ1 bmN0aW9ucyBpbiB0aGUgZ2hlc19lZGFjIGJlY2F1c2UgdGhlIGNhY2hlIHN0cnVjdHVyZSBhbW9u ZyBDUFUgY29yZXMgd291bGQgdmFyeT8NCklmIHNvLCBJIHRoaW5rIGVkYWMgZGV2aWNlIGRvZXMg bm90IHN1cHBvcnQgZHluYW1pYyBhZGRpdGlvbi9kZWxldGlvbiBvZiBhIGRldmljZSBpbnN0YW5j ZSBiZWNhdXNlDQplZGFjX2RldmljZV9hbGxvY19jdGxfaW5mbygpIHByZS1hbGxvY2F0ZXMgbWVt b3J5IGZvciB0aGUgaW50ZXJuYWwgZWRhYyBkZXYgc3RydWN0dXJlcyBmb3IgdGhlIG51bWJlciBv ZiANCmluc3RhbmNlcyhudW1iZXIgb2YgQ1BVcykgYW5kIG51bWJlciBvZiBibG9ja3MobnVtYmVy IG9mIENhY2hlcykgcGFzc2VkPw0KDQo+DQo+DQo+PiBJbiB0aGlzIGNhc2UsIHdlIGZvdW5kIGFj cGlfZmluZF9jYWNoZV9ub2RlKCkgbWlzdGFrZW5seSBkZXRlY3RpbmcNCj4+IGhpZ2ggbGV2ZWwg Y2FjaGUgYXMgbG93IGxldmVsIGNhY2hlLCB3aGVuIHRoZSBjYWNoZSBub2RlIGlzIGluIHRoZQ0K Pj4gcHJvY2Vzc29yIG5vZGXigJlzIHByaXZhdGUgcmVzb3VyY2UgbGlzdC4NCj4+DQo+PiBUbyBm aXggdGhpcyBpc3N1ZSBhZGQgZHVwbGljYXRpb24gY2hlY2sgaW4gdGhlDQo+PiBhY3BpX2ZpbmRf Y2FjaGVfbGV2ZWwoKSwgZm9yIGEgY2FjaGUgbm9kZSBmb3VuZCBpbiB0aGUgcHJpdmF0ZQ0KPj4g cmVzb3VyY2Ugb2YgYSBDUFUgbm9kZSB3aXRoIGFsbCB0aGUgbmV4dCBsZXZlbCBvZiBjYWNoZXMg cHJlc2VudCBpbiB0aGUgb3RoZXINCj5jYWNoZSBub2Rlcy4NCj4NCj5JJ20gbm90IG92ZXJseSBm YW1pbGlhciB3aXRoIHRoZSBQUFRULCBpcyBpdCBwb3NzaWJsZSB0aGlzIGlzc3VlIGlzIHZpc2li bGUgaW4NCj4vc3lzL2RldmljZXMvc3lzdGVtL2NwdS9jcHUwL2NhY2hlPw0KPg0KPg0KPlRoYW5r cywNCj4NCj5KYW1lcw0KPg0KPg0KPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvYWNwaS9wcHR0LmMg Yi9kcml2ZXJzL2FjcGkvcHB0dC5jIGluZGV4DQo+PiA0YWU5MzM1MGI3MGQuLmRlMWRkNjA1ZDNh ZCAxMDA2NDQNCj4+IC0tLSBhL2RyaXZlcnMvYWNwaS9wcHR0LmMNCj4+ICsrKyBiL2RyaXZlcnMv YWNwaS9wcHR0LmMNCj4+IEBAIC0xMzIsMjEgKzEzMiw4MCBAQCBzdGF0aWMgdW5zaWduZWQgaW50 IGFjcGlfcHB0dF93YWxrX2NhY2hlKHN0cnVjdA0KPmFjcGlfdGFibGVfaGVhZGVyICp0YWJsZV9o ZHIsDQo+PiAgCXJldHVybiBsb2NhbF9sZXZlbDsNCj4+ICB9DQo+Pg0KPj4gKy8qKg0KPj4gKyAq IGFjcGlfcHB0dF93YWxrX2NoZWNrX2R1cGxpY2F0ZSgpIC0gRmluZCB0aGUgY2FjaGUgcmVzb3Vy Y2UgdG8NCj4+ICtjaGVjaywNCj4+ICsgKiBpcyBhIGR1cGxpY2F0aW9uIGluIHRoZSBuZXh0X2xl dmVsX29mX2NhY2hlIHBvaW50ZXIgb2Ygb3RoZXIgY2FjaGUuDQo+PiArICogQHRhYmxlX2hkcjog UG9pbnRlciB0byB0aGUgaGVhZCBvZiB0aGUgUFBUVCB0YWJsZQ0KPj4gKyAqIEByZXM6IGNhY2hl IHJlc291cmNlIGluIHRoZSBQUFRUIHdlIHdhbnQgdG8gd2Fsaw0KPj4gKyAqIEByZXNfY2hlY2s6 IGNhY2hlIHJlc291cmNlIGluIHRoZSBQUFRUIHdlIHdhbnQgdG8gY2hlY2sgZm9yDQo+ZHVwbGlj YXRpb24uDQo+PiArICoNCj4+ICsgKiBHaXZlbiBib3RoIFBQVFQgcmVzb3VyY2UsIHZlcmlmeSB0 aGF0IHRoZXkgYXJlIGNhY2hlIG5vZGVzLCB0aGVuDQo+PiArd2Fsaw0KPj4gKyAqIGRvd24gZWFj aCBsZXZlbCBvZiBjYWNoZSBAcmVzLCBhbmQgY2hlY2sgZm9yIHRoZSBkdXBsaWNhdGlvbi4NCj4+ ICsgKg0KPj4gKyAqIFJldHVybjogdHJ1ZSBpZiBkdXBsaWNhdGlvbiBmb3VuZCwgZmFsc2Ugb3Ro ZXJ3aXNlLg0KPj4gKyAqLw0KPj4gK3N0YXRpYyBib29sIGFjcGlfcHB0dF93YWxrX2NoZWNrX2R1 cGxpY2F0ZShzdHJ1Y3QgYWNwaV90YWJsZV9oZWFkZXINCj4qdGFibGVfaGRyLA0KPj4gKwkJCQkJ ICAgc3RydWN0IGFjcGlfc3VidGFibGVfaGVhZGVyICpyZXMsDQo+PiArCQkJCQkgICBzdHJ1Y3Qg YWNwaV9zdWJ0YWJsZV9oZWFkZXINCj4qcmVzX2NoZWNrKSB7DQo+PiArCXN0cnVjdCBhY3BpX3Bw dHRfY2FjaGUgKmNhY2hlOw0KPj4gKwlzdHJ1Y3QgYWNwaV9wcHR0X2NhY2hlICpjaGVjazsNCj4+ ICsNCj4+ICsJaWYgKHJlcy0+dHlwZSAhPSBBQ1BJX1BQVFRfVFlQRV9DQUNIRSB8fA0KPj4gKwkg ICAgcmVzX2NoZWNrLT50eXBlICE9IEFDUElfUFBUVF9UWVBFX0NBQ0hFKQ0KPj4gKwkJcmV0dXJu IGZhbHNlOw0KPj4gKw0KPj4gKwljYWNoZSA9IChzdHJ1Y3QgYWNwaV9wcHR0X2NhY2hlICopcmVz Ow0KPj4gKwljaGVjayA9IChzdHJ1Y3QgYWNwaV9wcHR0X2NhY2hlICopcmVzX2NoZWNrOw0KPj4g Kwl3aGlsZSAoY2FjaGUpIHsNCj4+ICsJCWlmIChjYWNoZSA9PSBjaGVjaykNCj4+ICsJCQlyZXR1 cm4gdHJ1ZTsNCj4+ICsJCWNhY2hlID0gZmV0Y2hfcHB0dF9jYWNoZSh0YWJsZV9oZHIsIGNhY2hl LQ0KPj5uZXh0X2xldmVsX29mX2NhY2hlKTsNCj4+ICsJfQ0KPj4gKw0KPj4gKwlyZXR1cm4gZmFs c2U7DQo+PiArfQ0KPj4gKw0KPj4gIHN0YXRpYyBzdHJ1Y3QgYWNwaV9wcHR0X2NhY2hlICoNCj4+ ICBhY3BpX2ZpbmRfY2FjaGVfbGV2ZWwoc3RydWN0IGFjcGlfdGFibGVfaGVhZGVyICp0YWJsZV9o ZHIsDQo+PiAgCQkgICAgICBzdHJ1Y3QgYWNwaV9wcHR0X3Byb2Nlc3NvciAqY3B1X25vZGUsDQo+ PiAgCQkgICAgICB1bnNpZ25lZCBpbnQgKnN0YXJ0aW5nX2xldmVsLCB1bnNpZ25lZCBpbnQgbGV2 ZWwsDQo+PiAgCQkgICAgICBpbnQgdHlwZSkNCj4+ICB7DQo+PiAtCXN0cnVjdCBhY3BpX3N1YnRh YmxlX2hlYWRlciAqcmVzOw0KPj4gKwlzdHJ1Y3QgYWNwaV9zdWJ0YWJsZV9oZWFkZXIgKnJlcywg KnJlczI7DQo+PiAgCXVuc2lnbmVkIGludCBudW1iZXJfb2ZfbGV2ZWxzID0gKnN0YXJ0aW5nX2xl dmVsOw0KPj4gIAlpbnQgcmVzb3VyY2UgPSAwOw0KPj4gKwlpbnQgcmVzb3VyY2UyID0gMDsNCj4+ ICsJYm9vbCBkdXBsaWNhdGUgPSBmYWxzZTsNCj4+ICAJc3RydWN0IGFjcGlfcHB0dF9jYWNoZSAq cmV0ID0gTlVMTDsNCj4+ICAJdW5zaWduZWQgaW50IGxvY2FsX2xldmVsOw0KPj4NCj4+ICAJLyog d2FsayBkb3duIGZyb20gcHJvY2Vzc29yIG5vZGUgKi8NCj4+ICAJd2hpbGUgKChyZXMgPSBhY3Bp X2dldF9wcHR0X3Jlc291cmNlKHRhYmxlX2hkciwgY3B1X25vZGUsDQo+cmVzb3VyY2UpKSkgew0K Pj4gIAkJcmVzb3VyY2UrKzsNCj4+ICsJCS8qDQo+PiArCQkgKiBQUFRUIGRlZmluaXRpb24gaW4g dGhlIEFDUEkgc3BlY2lmaWNhdGlvbiBhbGxvd3MgYSBoaWdoIGxldmVsDQo+Y2FjaGUNCj4+ICsJ CSAqIG5vZGUgd291bGQgYmUgcmVwcmVzZW50ZWQgc2ltdWx0YW5lb3VzbHkgYm90aCBpbiB0aGUN Cj5wcml2YXRlIHJlc291cmNlDQo+PiArCQkgKiBvZiBhIENQVSBub2RlIGFuZCB2aWEgdGhlIG5l eHRfbGV2ZWxfb2ZfY2FjaGUgcG9pbnRlciBvZg0KPmFub3RoZXIgY2FjaGUgbm9kZSwNCj4+ICsJ CSAqIHdpdGhpbiB0aGUgc2FtZSBDUFUgaGllcmFyY2h5LiBUaGlzIHJlc3VsdGluZw0KPmFjcGlf ZmluZF9jYWNoZV9sZXZlbCgpDQo+PiArCQkgKiBtaXN0YWtlbmx5IGRldGVjdHMgYSBoaWdoZXIg bGV2ZWwgY2FjaGUgbm9kZSBpbiB0aGUgbG93DQo+bGV2ZWwgYXMgd2VsbC4NCj4+ICsJCSAqDQo+ PiArCQkgKiBDaGVjayBhIGNhY2hlIG5vZGUgaW4gdGhlIHByaXZhdGUgcmVzb3VyY2Ugb2YgdGhl IENQVSBub2RlDQo+Zm9yIGFueQ0KPj4gKwkJICogZHVwbGljYXRpb24uDQo+PiArCQkgKi8NCj4+ ICsJCXJlc291cmNlMiA9IDA7DQo+PiArCQlkdXBsaWNhdGUgPSBmYWxzZTsNCj4+ICsJCXdoaWxl ICgocmVzMiA9IGFjcGlfZ2V0X3BwdHRfcmVzb3VyY2UodGFibGVfaGRyLCBjcHVfbm9kZSwNCj5y ZXNvdXJjZTIpKSkgew0KPj4gKwkJCXJlc291cmNlMisrOw0KPj4gKwkJCWlmIChyZXMyID09IHJl cykNCj4+ICsJCQkJY29udGludWU7DQo+PiArCQkJaWYgKGFjcGlfcHB0dF93YWxrX2NoZWNrX2R1 cGxpY2F0ZSh0YWJsZV9oZHIsIHJlczIsDQo+cmVzKSkgew0KPj4gKwkJCQlkdXBsaWNhdGUgPSB0 cnVlOw0KPj4gKwkJCQlicmVhazsNCj4+ICsJCQl9DQo+PiArCQl9DQo+PiArCQlpZiAoZHVwbGlj YXRlKQ0KPj4gKwkJCWNvbnRpbnVlOw0KPj4NCj4+ICAJCWxvY2FsX2xldmVsID0gYWNwaV9wcHR0 X3dhbGtfY2FjaGUodGFibGVfaGRyLA0KPipzdGFydGluZ19sZXZlbCwNCj4+ICAJCQkJCQkgICBy ZXMsICZyZXQsIGxldmVsLCB0eXBlKTsNCj4+DQoNClRoYW5rcywNClNoaWp1DQo=