From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 514E3CDB474 for ; Wed, 18 Oct 2023 02:56:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:CC:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=j9QMyYbP2OhqCGmvDgUR1ctPYpCzcOLGEWHAx8/ba64=; b=n9qomn/oWNdM/s DRqC9KJ7QIWtsyEPGtq/s2v4/DbD8usSBAKcNgDmiPDrCh5lPHcUo5A1/TchZ6Fn79gp7+iKGX3t+ 4zjViOz+HTq1mXh+9RAdgEplD2Xaykpn5J12s4FWbfC48DKQ/u3/VQFZcJGhreQJbS2Er7Q3GZcCI sQJrl48MLDDPhyWI1uh42ep5DGumLCRh9o3C1mEViqe2YDT+pVL2FSJZIdBMjuxFSnoPSD9syWQyC /+Pp2uCRDvX3G2ZgKTFlXOYVjYnMxW6w6qUUa3md+OLuuMy3D1gYXvTOEUonlOy153mmKnbcjtHJq H4xubpwN60mN0DAOBQyA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qswjW-00DcqC-35; Wed, 18 Oct 2023 02:56:30 +0000 Received: from 60-248-80-70.hinet-ip.hinet.net ([60.248.80.70] helo=Atcsqr.andestech.com) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qswjS-00Dcpa-2k for linux-riscv@lists.infradead.org; Wed, 18 Oct 2023 02:56:30 +0000 Received: from mail.andestech.com (ATCPCS16.andestech.com [10.0.1.222]) by Atcsqr.andestech.com with ESMTP id 39I2u9Q4014701; Wed, 18 Oct 2023 10:56:09 +0800 (+08) (envelope-from cl634@andestech.com) Received: from swlinux02 (10.0.15.183) by ATCPCS16.andestech.com (10.0.1.222) with Microsoft SMTP Server id 14.3.498.0; Wed, 18 Oct 2023 10:56:06 +0800 Date: Wed, 18 Oct 2023 10:53:16 +0800 From: CL Wang To: Alexandre Ghiti CC: , , , , , Subject: Re: [PATCH] riscv: mm: Synchronize memory attributes for all mm in free_initmem() on RV32 platform. Message-ID: References: <20230912093356.2717293-1-cl634@andestech.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/2.2.12 (2023-09-09) X-Originating-IP: [10.0.15.183] X-DNSRBL: X-MAIL: Atcsqr.andestech.com 39I2u9Q4014701 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231017_195627_355942_39E6721F X-CRM114-Status: GOOD ( 45.99 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org SGkgQWxleGFuZHJlLAoKRmlyc3Qgb2YgYWxsLCB0aGFuayB5b3UgZm9yIHlvdXIgcmVzcG9uc2Uu CllvdSBhcmUgcmlnaHQsIHRoaXMgcGF0Y2ggaXMgYSByZWZlcmVuY2UgdG8gdGhlIG1vZGlmaWNh dGlvbiBvZiB0aGUgQVJNIHBsYXRmb3JtCigwODkyNWMyZjEyLCBBUk06IDg0NjQvMTogVXBkYXRl IGFsbCBtbSBzdHJ1Y3R1cmVzIHdpdGggc2VjdGlvbiBhZGp1c3RtZW50cyksIHNvCnRoZSBtb2Rp ZmljYXRpb24gd2lsbCBiZSB2ZXJ5IHNpbWlsYXIgdG8gdGhlIHBhdGNoIHlvdSBtZW50aW9uZWQu CgpIb3dldmVyLCBpdCBjYW5ub3QgYmUgZGVuaWVkIHRoYXQgaW4gdGhlIFJWMzIgZW52aXJvbm1l bnQsIGl0IGlzIGVmZm9ydGxlc3MgdG8gZW5jb3VudGVyCnRoZSBtZW1vcnkgYXR0cmlidXRlIG1v ZGlmaWNhdGlvbiBwcm9ibGVtIGF0IGJvb3QgdGltZSwgYW5kIGl0IGlzIDEwMCUgcmVwcm9kdWNp YmxlLiBUaGlzCnByb2JsZW0gaXMgc3RpbGwgbm90IGZpeGVkIGluIHRoZSBuZXcgdmVyc2lvbiBv ZiB0aGUga2VybmVsLgoKU28gY291bGQgeW91IHBsZWFzZSBhZHZpc2UgbWUgb24gd2hldGhlciBJ IHNob3VsZCBjb250aW51ZSByZWZpbmluZyB0aGlzIHBhdGNoPwoKVGhhbmtzIGZvciB5b3VyIGFk dmljZS4KCkJlc3QgcmVnYXJkcwpDTAoKT24gRnJpLCBTZXAgMjksIDIwMjMgYXQgMTI6NDM6NDhQ TSArMDIwMCwgQWxleGFuZHJlIEdoaXRpIHdyb3RlOgo+IEhpIENMLAo+IAo+IAo+IE9uIFR1ZSwg U2VwIDEyLCAyMDIzIGF0IDExOjM04oCvQU0gQ0wgV2FuZyA8Y2w2MzRAYW5kZXN0ZWNoLmNvbT4g d3JvdGU6Cj4gPgo+ID4gMS4gU3ltcHRvbToKPiA+ICAgICAgICAgWyAgICAgICA0NC40ODY1Mzdd IFVuYWJsZSB0byBoYW5kbGUga2VybmVsIHBhZ2luZyByZXF1ZXN0IGF0IHZpcnR1YWwgYWRkcmVz cyBjMDgwMDAwMAo+ID4gICAgICAgICBbICAgICAgIDQ0LjUwOTk4MF0gT29wcyBbIzFdCj4gPiAg ICAgICAgIFsgICAgICAgNDQuNTE2OTc1XSBNb2R1bGVzIGxpbmtlZCBpbjoKPiA+ICAgICAgICAg WyAgICAgICA0NC41MjYyNjBdIENQVTogMCBQSUQ6IDEgQ29tbTogc3dhcHBlciBOb3QgdGFpbnRl ZCA2LjEuMjctMDUxNTMtZzQ1ZjZhOTI4NjU1MC1kaXJ0eSAjMTkKPiA+ICAgICAgICAgWyAgICAg ICA0NC41NTA0MjJdIEhhcmR3YXJlIG5hbWU6IGFuZGVzdGVjaCxhNDUgKERUKQo+ID4gICAgICAg ICBbICAgICAgIDQ0LjU2MzQ3M10gZXBjIDogX19tZW1zZXQrMHg1OC8weGY0Cj4gPiAgICAgICAg IFsgICAgICAgNDQuNTc0MzUzXSAgICAgIHJhIDogZnJlZV9yZXNlcnZlZF9hcmVhKzB4YjAvMHgx YTQKPiA+ICAgICAgICAgWyAgICAgICA0NC41ODgxNDRdIGVwYyA6IGMwNWQ0Y2EwIHJhIDogYzAx MWYzMmMgc3AgOiBjMmM2MWYwMAo+ID4gICAgICAgICBbICAgICAgIDQ0LjYwMzUzNl0gICAgICBn cCA6IGMyOGE1N2M4IHRwIDogYzJjOTgwMDAgdDAgOiBjMDgwMDAwMAo+ID4gICAgICAgICBbICAg ICAgIDQ0LjYxODkxNl0gICAgICB0MSA6IDA3OTAxYjQ4IHQyIDogMDAwMDAwMGYgczAgOiBjMmM2 MWY1MAo+ID4gICAgICAgICBbICAgICAgIDQ0LjYzNDMwOF0gICAgICBzMSA6IDAwMDAwMDAxIGEw IDogYzA4MDAwMDAgYTEgOiBjY2NjY2NjYwo+ID4gICAgICAgICBbICAgICAgIDQ0LjY0OTY5Nl0g ICAgICBhMiA6IDAwMDAxMDAwIGEzIDogYzA4MDEwMDAgYTQgOiAwMDAwMDAwMAo+ID4gICAgICAg ICBbICAgICAgIDQ0LjY2NTA4NV0gICAgICBhNSA6IDAyMDAwMDAwIGE2IDogYzA4MDBmZmYgYTcg OiAwMDAwMGMwOAo+ID4gICAgICAgICBbICAgICAgIDQ0LjY4MDQ2N10gICAgICBzMiA6IDAwMDAw MGNjIHMzIDogZmZmZmZmZmYgczQgOiAwMDAwMDAwMAo+ID4gICAgICAgICBbICAgICAgIDQ0LjY5 NTg0Nl0gICAgICBzNSA6IGMyOGE2NmNjIHM2IDogYzFlYmEwMDAgczcgOiBjMjEyNTgyMAo+ID4g ICAgICAgICBbICAgICAgIDQ0LjcxMTIyNV0gICAgICBzOCA6IGMwODAwMDAwIHM5IDogYzIxMjU4 M2MgczEwOiBjMjhhNjY0OAo+ID4gICAgICAgICBbICAgICAgIDQ0LjcyNjYyM10gICAgICBzMTE6 IGZlMDNjN2MwIHQzIDogYWNmOTE3YmYgdDQgOiBlMDAwMDAwMAo+ID4gICAgICAgICBbICAgICAg IDQ0Ljc0MjAwOV0gICAgICB0NSA6IGMyY2EwMDExIHQ2IDogYzJjYTAwMTYKPiA+ICAgICAgICAg WyAgICAgICA0NC43NTM3ODldIHN0YXR1czogMDAwMDAxMjAgYmFkYWRkcjogYzA4MDAwMDAgY2F1 c2U6IDAwMDAwMDBmCj4gPiAgICAgICAgIFsgICAgICAgNDQuNzcxMjM0XSBbPGMwNWQ0Y2EwPl0g X19tZW1zZXQrMHg1OC8weGY0Cj4gPiAgICAgICAgIFsgICAgICAgNDQuNzgzODk1XSBbPGMwMDAz ZTU0Pl0gZnJlZV9pbml0bWVtKzB4ODAvMHg4OAo+ID4gICAgICAgICBbICAgICAgIDQ0Ljc5NzU5 OV0gWzxjMDVkY2Q1Yz5dIGtlcm5lbF9pbml0KzB4M2MvMHgxMjQKPiA+ICAgICAgICAgWyAgICAg ICA0NC44MTEzOTFdIFs8YzAwMDM0Mjg+XSByZXRfZnJvbV9leGNlcHRpb24rMHgwLzB4MTYKPiA+ Cj4gPiAyLiBUbyByZXByb2R1Y2UgdGhlIHByb2JsZW06Cj4gPiAgICAgICAgIGEuIFVzZSB0aGUg UlYzMiB0b29sY2hhaW4gdG8gYnVpbGQgdGhlIHN5c3RlbS4KPiA+ICAgICAgICAgYi4gQnVpbGQg aW4gdGhlIFNQSSBtb2R1bGUgYW5kIG10ZHBhcnQgbW9kdWxlIGluIHRoZSBrZXJuZWwKPiA+ICAg ICAgICAgICAgICAgICBFeGFtcGxlOiBFbmFibGUgdGhlIGZvbGxvd2luZyBjb25maWd1cmF0aW9u Cj4gPiAgICAgICAgICAgICAgICAgLSBDT05GSUdfU1BJCj4gPiAgICAgICAgICAgICAgICAgLSBD T05GSUdfTVREIGFuZCBDT05GSUdfTVREX1NQSV9OT1IKPiA+ICAgICAgICAgYy4gRW5hYmxlIHRo ZSAiTWFrZSBrZXJuZWwgdGV4dCBhbmQgcm9kYXRhIHJlYWQtb25seSIgb3B0aW9uIGJ5IHVzaW5n IHRoZQo+ID4gICAgICAgICAgICBmb2xsb3dpbmcga2VybmVsIGNvbmZpZy4KPiA+ICAgICAgICAg ICAgICAgICAtIENPTkZJR19TVFJJQ1RfS0VSTkVMX1JXWAo+ID4KPiA+IDMuIFJvb3QgY2F1c2U6 Cj4gPiAgICAgICAgIFRoaXMgcHJvYmxlbSBvY2N1cnMgd2hlbiB0aGUgdmlydHVhbCBhZGRyZXNz IG9mIHRoZSBrZXJuZWwgcGFnaW5nIHJlcXVlc3QKPiA+ICAgICAgICAgaXMgbWFwcGVkIHRvIGEg bWVnYXBhZ2Ugb24gdGhlIFJWMzIgcGxhdGZvcm0uCj4gPiAgICAgICAgIER1cmluZyBzeXN0ZW0g c3RhcnR1cCwgZnJlZV9pbml0bWVtKCkgY2FsbHMgc2V0X2tlcm5lbF9tZW1vcnkoKSB0bwo+ID4g ICAgICAgICBjaGFuZ2UgdGhlIG1lbW9yeSBhdHRyaWJ1dGVzIG9mIHRoZSBpbml0IHNlY3Rpb24g ZnJvbSBSTyB0byBSVy4gSXQKPiA+ICAgICAgICAgdGhlbiBjYWxscyBmcmVlX2luaXRtZW1fZGVm YXVsdCgpIHRvIHNldCB0aGUgbWVtb3J5IHRvCj4gPiAgICAgICAgIFBPSVNPTl9GUkVFX0lOSVRN RU0uIElmIHRoZSBzeXN0ZW0gcnVucyBtb2Rwcm9iZSBhdCBib290IHRpbWUsIGl0Cj4gPiAgICAg ICAgIHdpbGwgdHJpZ2dlciBhIGZvcmsvZXhlYyB0byBjcmVhdGUgYSBuZXcgbW0gZm9yIHRoZSBu ZXcgcHJvY2Vzcy4gSWYKPiA+ICAgICAgICAgdGhlIG1vZHByb2JlIHdhcyBjYWxsZWQgYmVmb3Jl IGZyZWVfaW5pdG1lbSgpLCBpdCB3aWxsIGNhdXNlIGEga2VybmVsCj4gPiAgICAgICAgIG9vcHMg YmVjYXVzZSB0aGUgbWVtb3J5IGF0dHJpYnV0ZXMgb2YgdGhlIGN1cnJlbnQgbW0gd2VyZSBub3Qg Y2hhbmdlZAo+ID4gICAgICAgICBieSBzZXRfa2VybmVsX21lbW9yeSgpLiBUaGlzIGlzIGJlY2F1 c2UgdGhlIHNldF9rZXJuZWxfbWVtb3J5KCkgY2hhbmdlcwo+ID4gICAgICAgICB0aGUgbWVtb3J5 IGF0dHJpYnV0ZXMgb2YgaW5pdF9tbSwgYnV0IHRoZSBwZ2Qoc2F0cCkgY3VycmVudGx5IGluIHVz ZQo+ID4gICAgICAgICBpcyBhbm90aGVyIHByb2Nlc3MncyBtbSBhbmQgaXQncyBtZW1vcnkgYXR0 cmlidXRlIGRvZXNuJ3QgY2hhbmdlLgo+ID4gICAgICAgICBUaHVzLCBpdCBjYXVzZXMgYSBrZXJu ZWwgb29wcyBiZWNhdXNlIHRoZSBtZW1vcnkgcmVnaW9uIGhhcyBhbgo+ID4gICAgICAgICB1bi13 cml0YWJsZSBhdHRyaWJ1dGUuCj4gPgo+ID4gNC4gVGhlIHNvbHV0aW9uLgo+ID4gICAgICAgICBB IHNpbWlsYXIgcHJvYmxlbSBvY2N1cnJlZCBvbiBBUk0gcGxhdGZvcm1zIGFuZCB3YXMgZml4ZWQg aW4KPiA+ICAgICAgICAgMDg5MjVjMmYxMiAoQVJNOiA4NDY0LzE6IFVwZGF0ZSBhbGwgbW0gc3Ry dWN0dXJlcyB3aXRoIHNlY3Rpb24KPiA+ICAgICAgICAgYWRqdXN0bWVudHMpLiBUaGlzIHBhdGNo IHVzZXMgYSBzaW1pbGFyIGFwcHJvYWNoIHRvIGZpeCB0aGUKPiA+ICAgICAgICAgcHJvYmxlbSBv biBSVjMyIGJ5IHN5bmNocm9uaXppbmcgdGhlIG1lbW9yeSBhdHRyaWJ1dGVzCj4gPiAgICAgICAg IG9mIHRoZSBpbml0IHNlY3Rpb24gZm9yIGFsbCBtbQo+ID4KPiA+IFNpZ25lZC1vZmYtYnk6IENM IFdhbmcgPGNsNjM0QGFuZGVzdGVjaC5jb20+Cj4gPiAtLS0KPiA+ICBhcmNoL3Jpc2N2L2luY2x1 ZGUvYXNtL3NldF9tZW1vcnkuaCB8IDEyICsrKysrKysrKwo+ID4gIGFyY2gvcmlzY3Yva2VybmVs L3NldHVwLmMgICAgICAgICAgIHwgNDAgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0KPiA+ ICBhcmNoL3Jpc2N2L21tL3BhZ2VhdHRyLmMgICAgICAgICAgICB8IDMwICsrKysrKysrKysrKysr LS0tLS0tLS0KPiA+ICAzIGZpbGVzIGNoYW5nZWQsIDY2IGluc2VydGlvbnMoKyksIDE2IGRlbGV0 aW9ucygtKQo+ID4KPiA+IGRpZmYgLS1naXQgYS9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL3NldF9t ZW1vcnkuaCBiL2FyY2gvcmlzY3YvaW5jbHVkZS9hc20vc2V0X21lbW9yeS5oCj4gPiBpbmRleCBh MmMxNGQ0YjM5OTMuLjA0MTU1MWJmNTY4ZSAxMDA2NDQKPiA+IC0tLSBhL2FyY2gvcmlzY3YvaW5j bHVkZS9hc20vc2V0X21lbW9yeS5oCj4gPiArKysgYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL3Nl dF9tZW1vcnkuaAo+ID4gQEAgLTE2LDYgKzE2LDEwIEBAIGludCBzZXRfbWVtb3J5X3J3KHVuc2ln bmVkIGxvbmcgYWRkciwgaW50IG51bXBhZ2VzKTsKPiA+ICBpbnQgc2V0X21lbW9yeV94KHVuc2ln bmVkIGxvbmcgYWRkciwgaW50IG51bXBhZ2VzKTsKPiA+ICBpbnQgc2V0X21lbW9yeV9ueCh1bnNp Z25lZCBsb25nIGFkZHIsIGludCBudW1wYWdlcyk7Cj4gPiAgaW50IHNldF9tZW1vcnlfcndfbngo dW5zaWduZWQgbG9uZyBhZGRyLCBpbnQgbnVtcGFnZXMpOwo+ID4gKwo+ID4gKyNpZiBkZWZpbmVk KENPTkZJR18zMkJJVCkgJiYgZGVmaW5lZChDT05GSUdfU1RSSUNUX0tFUk5FTF9SV1gpCj4gPiAr aW50IHNldF9tZW1vcnlfcndfbnhfYnlfbW0odW5zaWduZWQgbG9uZyBhZGRyLCBpbnQgbnVtcGFn ZXMsIHN0cnVjdCBtbV9zdHJ1Y3QgKm1tKTsKPiA+ICsjZW5kaWYKPiA+ICBzdGF0aWMgX19hbHdh eXNfaW5saW5lIGludCBzZXRfa2VybmVsX21lbW9yeShjaGFyICpzdGFydHAsIGNoYXIgKmVuZHAs Cj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKCpz ZXRfbWVtb3J5KSh1bnNpZ25lZCBsb25nIHN0YXJ0LAo+ID4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG51bV9wYWdlcykp Cj4gPiBAQCAtMzIsNiArMzYsMTQgQEAgc3RhdGljIGlubGluZSBpbnQgc2V0X21lbW9yeV9ydyh1 bnNpZ25lZCBsb25nIGFkZHIsIGludCBudW1wYWdlcykgeyByZXR1cm4gMDsgfQo+ID4gIHN0YXRp YyBpbmxpbmUgaW50IHNldF9tZW1vcnlfeCh1bnNpZ25lZCBsb25nIGFkZHIsIGludCBudW1wYWdl cykgeyByZXR1cm4gMDsgfQo+ID4gIHN0YXRpYyBpbmxpbmUgaW50IHNldF9tZW1vcnlfbngodW5z aWduZWQgbG9uZyBhZGRyLCBpbnQgbnVtcGFnZXMpIHsgcmV0dXJuIDA7IH0KPiA+ICBzdGF0aWMg aW5saW5lIGludCBzZXRfbWVtb3J5X3J3X254KHVuc2lnbmVkIGxvbmcgYWRkciwgaW50IG51bXBh Z2VzKSB7IHJldHVybiAwOyB9Cj4gPiArCj4gPiArI2lmIGRlZmluZWQoQ09ORklHXzMyQklUKSAm JiBkZWZpbmVkKENPTkZJR19TVFJJQ1RfS0VSTkVMX1JXWCkKPiA+ICtzdGF0aWMgaW5saW5lIGlu dCBzZXRfbWVtb3J5X3J3X254X2J5X21tKHVuc2lnbmVkIGxvbmcgYWRkciwKPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgaW50IG51bXBhZ2VzLCBzdHJ1Y3QgbW1fc3RydWN0ICpt bSkKPiA+ICt7Cj4gPiArICAgICAgIHJldHVybiAwOwo+ID4gK30KPiA+ICsjZW5kaWYKPiA+ICBz dGF0aWMgaW5saW5lIGludCBzZXRfa2VybmVsX21lbW9yeShjaGFyICpzdGFydHAsIGNoYXIgKmVu ZHAsCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKCpzZXRfbWVt b3J5KSh1bnNpZ25lZCBsb25nIHN0YXJ0LAo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG51bV9wYWdlcykpCj4gPiBkaWZmIC0tZ2l0 IGEvYXJjaC9yaXNjdi9rZXJuZWwvc2V0dXAuYyBiL2FyY2gvcmlzY3Yva2VybmVsL3NldHVwLmMK PiA+IGluZGV4IDU0MjRkNzYzMTUwMi4uNzNjMjIxYjNjMzk5IDEwMDY0NAo+ID4gLS0tIGEvYXJj aC9yaXNjdi9rZXJuZWwvc2V0dXAuYwo+ID4gKysrIGIvYXJjaC9yaXNjdi9rZXJuZWwvc2V0dXAu Ywo+ID4gQEAgLTMxOSwxMyArMzE5LDQzIEBAIHN0YXRpYyBpbnQgX19pbml0IHRvcG9sb2d5X2lu aXQodm9pZCkKPiA+ICB9Cj4gPiAgc3Vic3lzX2luaXRjYWxsKHRvcG9sb2d5X2luaXQpOwo+ID4K PiA+IC12b2lkIGZyZWVfaW5pdG1lbSh2b2lkKQo+ID4gKyNpZiBkZWZpbmVkKENPTkZJR18zMkJJ VCkgJiYgZGVmaW5lZChDT05GSUdfU1RSSUNUX0tFUk5FTF9SV1gpCj4gPiArc3RhdGljIHZvaWQg c2V0X2tlcm5lbF9tbV9lYXJseShjaGFyICpzdGFydHAsIGNoYXIgKmVuZHAsCj4gPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGludCAoKnNldF9tZW1vcnkpKHVuc2lnbmVkIGxvbmcg c3RhcnQsCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBudW1fcGFnZXMs IHN0cnVjdCBtbV9zdHJ1Y3QgKm1tKSkKPiA+ICB7Cj4gPiAtICAgICAgIGlmIChJU19FTkFCTEVE KENPTkZJR19TVFJJQ1RfS0VSTkVMX1JXWCkpIHsKPiA+IC0gICAgICAgICAgICAgICBzZXRfa2Vy bmVsX21lbW9yeShsbV9hbGlhcyhfX2luaXRfYmVnaW4pLCBsbV9hbGlhcyhfX2luaXRfZW5kKSwg c2V0X21lbW9yeV9yd19ueCk7Cj4gPiAtICAgICAgICAgICAgICAgaWYgKElTX0VOQUJMRUQoQ09O RklHXzY0QklUKSkKPiA+IC0gICAgICAgICAgICAgICAgICAgICAgIHNldF9rZXJuZWxfbWVtb3J5 KF9faW5pdF9iZWdpbiwgX19pbml0X2VuZCwgc2V0X21lbW9yeV9ueCk7Cj4gPiArICAgICAgIHN0 cnVjdCB0YXNrX3N0cnVjdCAqdCwgKnM7Cj4gPiArICAgICAgIHVuc2lnbmVkIGxvbmcgc3RhcnQg PSAodW5zaWduZWQgbG9uZylzdGFydHA7Cj4gPiArICAgICAgIHVuc2lnbmVkIGxvbmcgZW5kID0g KHVuc2lnbmVkIGxvbmcpZW5kcDsKPiA+ICsgICAgICAgaW50IG51bV9wYWdlcyA9IFBBR0VfQUxJ R04oZW5kIC0gc3RhcnQpID4+IFBBR0VfU0hJRlQ7Cj4gPiArCj4gPiArICAgICAgIHNldF9tZW1v cnkoc3RhcnQsIG51bV9wYWdlcywgY3VycmVudC0+YWN0aXZlX21tKTsKPiA+ICsgICAgICAgaWYg KGN1cnJlbnQtPmFjdGl2ZV9tbSAhPSAmaW5pdF9tbSkKPiA+ICsgICAgICAgICAgICAgICBzZXRf bWVtb3J5KHN0YXJ0LCBudW1fcGFnZXMsICZpbml0X21tKTsKPiA+ICsKPiA+ICsgICAgICAgZm9y X2VhY2hfcHJvY2Vzcyh0KSB7Cj4gPiArICAgICAgICAgICAgICAgaWYgKHQtPmZsYWdzICYgUEZf S1RIUkVBRCkKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwo+ID4gKyAgICAg ICAgICAgICAgIGZvcl9lYWNoX3RocmVhZCh0LCBzKSB7Cj4gPiArICAgICAgICAgICAgICAgICAg ICAgICBpZiAocy0+bW0pCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldF9t ZW1vcnkoc3RhcnQsIG51bV9wYWdlcywgcy0+bW0pOwo+ID4gKyAgICAgICAgICAgICAgIH0KPiA+ ICAgICAgICAgfQo+ID4gK30KPiA+ICsjZW5kaWYKPiA+ICsKPiA+ICt2b2lkIGZyZWVfaW5pdG1l bSh2b2lkKQo+ID4gK3sKPiA+ICsjaWZkZWYgQ09ORklHX1NUUklDVF9LRVJORUxfUldYCj4gPiAr I2lmZGVmIENPTkZJR18zMkJJVAo+ID4gKyAgICAgICBzZXRfa2VybmVsX21tX2Vhcmx5KGxtX2Fs aWFzKF9faW5pdF9iZWdpbiksIGxtX2FsaWFzKF9faW5pdF9lbmQpLAo+ID4gKyAgICAgICAgICAg ICAgICAgICAgICAgICAgIHNldF9tZW1vcnlfcndfbnhfYnlfbW0pOwo+ID4gKyNlbHNlCj4gPiAr ICAgICAgIHNldF9rZXJuZWxfbWVtb3J5KGxtX2FsaWFzKF9faW5pdF9iZWdpbiksIGxtX2FsaWFz KF9faW5pdF9lbmQpLCBzZXRfbWVtb3J5X3J3X254KTsKPiA+ICsjZW5kaWYKPiA+ICsgICAgICAg aWYgKElTX0VOQUJMRUQoQ09ORklHXzY0QklUKSkKPiA+ICsgICAgICAgICAgICAgICBzZXRfa2Vy bmVsX21lbW9yeShfX2luaXRfYmVnaW4sIF9faW5pdF9lbmQsIHNldF9tZW1vcnlfbngpOwo+ID4g KyNlbmRpZgo+ID4KPiA+ICAgICAgICAgZnJlZV9pbml0bWVtX2RlZmF1bHQoUE9JU09OX0ZSRUVf SU5JVE1FTSk7Cj4gPiAgfQo+ID4gZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3YvbW0vcGFnZWF0dHIu YyBiL2FyY2gvcmlzY3YvbW0vcGFnZWF0dHIuYwo+ID4gaW5kZXggZWEzZDYxZGUwNjViLi4xNmVk NWNjOGY2ODMgMTAwNjQ0Cj4gPiAtLS0gYS9hcmNoL3Jpc2N2L21tL3BhZ2VhdHRyLmMKPiA+ICsr KyBiL2FyY2gvcmlzY3YvbW0vcGFnZWF0dHIuYwo+ID4gQEAgLTEwNSw3ICsxMDUsNyBAQCBzdGF0 aWMgY29uc3Qgc3RydWN0IG1tX3dhbGtfb3BzIHBhZ2VhdHRyX29wcyA9IHsKPiA+ICB9Owo+ID4K PiA+ICBzdGF0aWMgaW50IF9fc2V0X21lbW9yeSh1bnNpZ25lZCBsb25nIGFkZHIsIGludCBudW1w YWdlcywgcGdwcm90X3Qgc2V0X21hc2ssCj4gPiAtICAgICAgICAgICAgICAgICAgICAgICBwZ3By b3RfdCBjbGVhcl9tYXNrKQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgcGdwcm90X3QgY2xl YXJfbWFzaywgc3RydWN0IG1tX3N0cnVjdCAqbW0pCj4gPiAgewo+ID4gICAgICAgICBpbnQgcmV0 Owo+ID4gICAgICAgICB1bnNpZ25lZCBsb25nIHN0YXJ0ID0gYWRkcjsKPiA+IEBAIC0xMTgsNDIg KzExOCw1MCBAQCBzdGF0aWMgaW50IF9fc2V0X21lbW9yeSh1bnNpZ25lZCBsb25nIGFkZHIsIGlu dCBudW1wYWdlcywgcGdwcm90X3Qgc2V0X21hc2ssCj4gPiAgICAgICAgIGlmICghbnVtcGFnZXMp Cj4gPiAgICAgICAgICAgICAgICAgcmV0dXJuIDA7Cj4gPgo+ID4gLSAgICAgICBtbWFwX3dyaXRl X2xvY2soJmluaXRfbW0pOwo+ID4gLSAgICAgICByZXQgPSAgd2Fsa19wYWdlX3JhbmdlX25vdm1h KCZpbml0X21tLCBzdGFydCwgZW5kLCAmcGFnZWF0dHJfb3BzLCBOVUxMLAo+ID4gKyAgICAgICBt bWFwX3dyaXRlX2xvY2sobW0pOwo+ID4gKyAgICAgICByZXQgPSAgd2Fsa19wYWdlX3JhbmdlX25v dm1hKG1tLCBzdGFydCwgZW5kLCAmcGFnZWF0dHJfb3BzLCBOVUxMLAo+ID4gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICZtYXNrcyk7Cj4gPiAtICAgICAgIG1tYXBfd3JpdGVf dW5sb2NrKCZpbml0X21tKTsKPiA+ICsgICAgICAgbW1hcF93cml0ZV91bmxvY2sobW0pOwo+ID4K PiA+ICAgICAgICAgZmx1c2hfdGxiX2tlcm5lbF9yYW5nZShzdGFydCwgZW5kKTsKPiA+Cj4gPiAg ICAgICAgIHJldHVybiByZXQ7Cj4gPiAgfQo+ID4KPiA+ICsjaWYgZGVmaW5lZChDT05GSUdfMzJC SVQpICYmIGRlZmluZWQoQ09ORklHX1NUUklDVF9LRVJORUxfUldYKQo+ID4gK2ludCBzZXRfbWVt b3J5X3J3X254X2J5X21tKHVuc2lnbmVkIGxvbmcgYWRkciwgaW50IG51bXBhZ2VzLCBzdHJ1Y3Qg bW1fc3RydWN0ICptbSkKPiA+ICt7Cj4gPiArICAgICAgIHJldHVybiBfX3NldF9tZW1vcnkoYWRk ciwgbnVtcGFnZXMsIF9fcGdwcm90KF9QQUdFX1JFQUQgfCBfUEFHRV9XUklURSksCj4gPiArICAg ICAgICAgICAgICAgICAgICAgICAgICAgX19wZ3Byb3QoX1BBR0VfRVhFQyksIG1tKTsKPiA+ICt9 Cj4gPiArI2VuZGlmCj4gPiArCj4gPiAgaW50IHNldF9tZW1vcnlfcndfbngodW5zaWduZWQgbG9u ZyBhZGRyLCBpbnQgbnVtcGFnZXMpCj4gPiAgewo+ID4gICAgICAgICByZXR1cm4gX19zZXRfbWVt b3J5KGFkZHIsIG51bXBhZ2VzLCBfX3BncHJvdChfUEFHRV9SRUFEIHwgX1BBR0VfV1JJVEUpLAo+ ID4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgIF9fcGdwcm90KF9QQUdFX0VYRUMpKTsKPiA+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICBfX3BncHJvdChfUEFHRV9FWEVDKSwgJmluaXRf bW0pOwo+ID4gIH0KPiA+Cj4gPiAgaW50IHNldF9tZW1vcnlfcm8odW5zaWduZWQgbG9uZyBhZGRy LCBpbnQgbnVtcGFnZXMpCj4gPiAgewo+ID4gICAgICAgICByZXR1cm4gX19zZXRfbWVtb3J5KGFk ZHIsIG51bXBhZ2VzLCBfX3BncHJvdChfUEFHRV9SRUFEKSwKPiA+IC0gICAgICAgICAgICAgICAg ICAgICAgICAgICBfX3BncHJvdChfUEFHRV9XUklURSkpOwo+ID4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgIF9fcGdwcm90KF9QQUdFX1dSSVRFKSwgJmluaXRfbW0pOwo+ID4gIH0KPiA+Cj4g PiAgaW50IHNldF9tZW1vcnlfcncodW5zaWduZWQgbG9uZyBhZGRyLCBpbnQgbnVtcGFnZXMpCj4g PiAgewo+ID4gICAgICAgICByZXR1cm4gX19zZXRfbWVtb3J5KGFkZHIsIG51bXBhZ2VzLCBfX3Bn cHJvdChfUEFHRV9SRUFEIHwgX1BBR0VfV1JJVEUpLAo+ID4gLSAgICAgICAgICAgICAgICAgICAg ICAgICAgIF9fcGdwcm90KDApKTsKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICBfX3Bn cHJvdCgwKSwgJmluaXRfbW0pOwo+ID4gIH0KPiA+Cj4gPiAgaW50IHNldF9tZW1vcnlfeCh1bnNp Z25lZCBsb25nIGFkZHIsIGludCBudW1wYWdlcykKPiA+ICB7Cj4gPiAtICAgICAgIHJldHVybiBf X3NldF9tZW1vcnkoYWRkciwgbnVtcGFnZXMsIF9fcGdwcm90KF9QQUdFX0VYRUMpLCBfX3BncHJv dCgwKSk7Cj4gPiArICAgICAgIHJldHVybiBfX3NldF9tZW1vcnkoYWRkciwgbnVtcGFnZXMsIF9f cGdwcm90KF9QQUdFX0VYRUMpLCBfX3BncHJvdCgwKSwgJmluaXRfbW0pOwo+ID4gIH0KPiA+Cj4g PiAgaW50IHNldF9tZW1vcnlfbngodW5zaWduZWQgbG9uZyBhZGRyLCBpbnQgbnVtcGFnZXMpCj4g PiAgewo+ID4gLSAgICAgICByZXR1cm4gX19zZXRfbWVtb3J5KGFkZHIsIG51bXBhZ2VzLCBfX3Bn cHJvdCgwKSwgX19wZ3Byb3QoX1BBR0VfRVhFQykpOwo+ID4gKyAgICAgICByZXR1cm4gX19zZXRf bWVtb3J5KGFkZHIsIG51bXBhZ2VzLCBfX3BncHJvdCgwKSwgX19wZ3Byb3QoX1BBR0VfRVhFQyks ICZpbml0X21tKTsKPiA+ICB9Cj4gPgo+ID4gIGludCBzZXRfZGlyZWN0X21hcF9pbnZhbGlkX25v Zmx1c2goc3RydWN0IHBhZ2UgKnBhZ2UpCj4gPiBAQCAtMTk4LDEwICsyMDYsMTAgQEAgdm9pZCBf X2tlcm5lbF9tYXBfcGFnZXMoc3RydWN0IHBhZ2UgKnBhZ2UsIGludCBudW1wYWdlcywgaW50IGVu YWJsZSkKPiA+Cj4gPiAgICAgICAgIGlmIChlbmFibGUpCj4gPiAgICAgICAgICAgICAgICAgX19z ZXRfbWVtb3J5KCh1bnNpZ25lZCBsb25nKXBhZ2VfYWRkcmVzcyhwYWdlKSwgbnVtcGFnZXMsCj4g PiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9fcGdwcm90KF9QQUdFX1BSRVNFTlQpLCBf X3BncHJvdCgwKSk7Cj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9fcGdwcm90KF9Q QUdFX1BSRVNFTlQpLCBfX3BncHJvdCgwKSwgJmluaXRfbW0pOwo+ID4gICAgICAgICBlbHNlCj4g PiAgICAgICAgICAgICAgICAgX19zZXRfbWVtb3J5KCh1bnNpZ25lZCBsb25nKXBhZ2VfYWRkcmVz cyhwYWdlKSwgbnVtcGFnZXMsCj4gPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9fcGdw cm90KDApLCBfX3BncHJvdChfUEFHRV9QUkVTRU5UKSk7Cj4gPiArICAgICAgICAgICAgICAgICAg ICAgICAgICAgIF9fcGdwcm90KDApLCBfX3BncHJvdChfUEFHRV9QUkVTRU5UKSwgJmluaXRfbW0p Owo+ID4gIH0KPiA+ICAjZW5kaWYKPiA+Cj4gPiAtLQo+ID4gMi4zNC4xCj4gPgo+IAo+IEp1c3Qg YSBzaG9ydCBub3RlIHRvIHRlbGwgeW91IHRoYXQgSSBpbnRlbmQgdG8gcmV2aWV3IHRoaXMsIEkg anVzdAo+IG5lZWQgdG8gZmluZCBzb21lIHRpbWUsIGhvcGVmdWxseSBuZXh0IHdlZWsgOikgVGhh bmtzIGZvciB5b3VyIHBhdGNoLAo+IHRoaXMgaXMgdmVyeSBpbnRlcmVzdGluZyEKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LXJpc2N2IG1haWxp bmcgbGlzdApsaW51eC1yaXNjdkBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZy YWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtcmlzY3YK