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 X-Spam-Level: X-Spam-Status: No, score=-15.3 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 56CF5C433ED for ; Fri, 23 Apr 2021 08:34:42 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9EBAB61425 for ; Fri, 23 Apr 2021 08:34:41 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9EBAB61425 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=ghiti.fr Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=desiato.20200630; h=Sender:Content-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Date:Message-ID:From: References:Cc:To:Subject:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=IHNAohPaEcOlSroFP3tF1hLBImLtY3q1rWN7SsWiAsA=; b=J5NGTp3r6pU8kOmOhWMP9ljeO E2uPQohT+yLlwmaxYfQrmSjnkKQd+t+Zu/6UtCF1VdFAiT2wn5DthgNqT5ZCwx6LFRRGkpkeCpAuu Gas+eWnQPiKY87q/htNMA7XDge5ds3d4eM3BNfwpylv5cDSjH2536keIH+x2PDxQVDKk8hmo9FgT+ FHq4Q0nrxG9O2VbIvDG1qkHRuRP0AZjHdiDMYs7YwLHD7dPBv+4WBaUW4lcLemPXWrj6xML5QcQ5S W1kIjTwmrfB+Uel3kcR9wzKKJBoJ7M1AAAiRs+EP3ZTqQYtzDCgCR7zKTArJRiMC5X0W3UKyWOWCU jtRFRCLNQ==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lZrGY-0014NS-0z; Fri, 23 Apr 2021 08:34:22 +0000 Received: from bombadil.infradead.org ([2607:7c80:54:e::133]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lZrGP-0014Lp-8f for linux-riscv@desiato.infradead.org; Fri, 23 Apr 2021 08:34:16 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding: Content-Type:In-Reply-To:MIME-Version:Date:Message-ID:From:References:Cc:To: Subject:Sender:Reply-To:Content-ID:Content-Description; bh=kk4Yf0r0GhZLTEFLCr0o+DDD5D/QxTNMw6tTugkWxTc=; b=E0KmhR3NgaT+8q49YGkvZY/m3T cJhbePmeW5ljUKj9Or08gCkKcmWtvE9xxazU/TonwNFELkMckCAhr7b0JzKEM4UY3SRfvEH+n0UrR fdk9wpok/2gCk7H8u8apHtM+I8YhuWt+64yaSVhjU209b5jNa/ThwlqwVoZ0e1+4K3cDAx2iMfds+ 9838eV4rC3ED8zeulVguBIMwo0n7om4cXleyo0cYFv2o+T1lcf7fxv4IrWvpadG709A+s9EwMomI3 3fz9TxzQTxQvJVY6NiMpmq/GdPqQ9PD9wA1U8nu1Uak0MdWUyD3eg+Hz3EK2M42prpnTgZ0Z/WMRU rQb6kn4w==; Received: from relay7-d.mail.gandi.net ([217.70.183.200]) by bombadil.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lZrGM-00EG7d-1g for linux-riscv@lists.infradead.org; Fri, 23 Apr 2021 08:34:12 +0000 X-Originating-IP: 2.7.49.219 Received: from [192.168.1.12] (lfbn-lyo-1-457-219.w2-7.abo.wanadoo.fr [2.7.49.219]) (Authenticated sender: alex@ghiti.fr) by relay7-d.mail.gandi.net (Postfix) with ESMTPSA id 178B620003; Fri, 23 Apr 2021 08:34:02 +0000 (UTC) Subject: Re: [PATCH] riscv: Fix 32b kernel caused by 64b kernel mapping moving outside linear mapping To: Anup Patel Cc: Jonathan Corbet , Paul Walmsley , Palmer Dabbelt , Albert Ou , Arnd Bergmann , Andrey Ryabinin , Alexander Potapenko , Dmitry Vyukov , linux-doc@vger.kernel.org, linux-riscv , "linux-kernel@vger.kernel.org List" , kasan-dev@googlegroups.com, linux-arch , Linux Memory Management List References: <20210417172159.32085-1-alex@ghiti.fr> From: Alex Ghiti Message-ID: <66e9a8e0-5764-2eea-4070-bad3fb7ee48e@ghiti.fr> Date: Fri, 23 Apr 2021 04:34:02 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.10.0 MIME-Version: 1.0 In-Reply-To: Content-Language: fr X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210423_013410_389981_3298DA81 X-CRM114-Status: GOOD ( 25.20 ) 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-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org TGUgNC8yMC8yMSDDoCAxMjoxOCBBTSwgQW51cCBQYXRlbCBhIMOpY3JpdMKgOgo+IE9uIFNhdCwg QXByIDE3LCAyMDIxIGF0IDEwOjUyIFBNIEFsZXhhbmRyZSBHaGl0aSA8YWxleEBnaGl0aS5mcj4g d3JvdGU6Cj4+Cj4+IEZpeCBtdWx0aXBsZSBsZWZ0b3ZlcnMgd2hlbiBtb3ZpbmcgdGhlIGtlcm5l bCBtYXBwaW5nIG91dHNpZGUgdGhlIGxpbmVhcgo+PiBtYXBwaW5nIGZvciA2NGIga2VybmVsIHRo YXQgbGVmdCB0aGUgMzJiIGtlcm5lbCB1bnVzYWJsZS4KPj4KPj4gRml4ZXM6IDRiNjdmNDhkYTcw NyAoInJpc2N2OiBNb3ZlIGtlcm5lbCBtYXBwaW5nIG91dHNpZGUgb2YgbGluZWFyIG1hcHBpbmci KQo+PiBTaWduZWQtb2ZmLWJ5OiBBbGV4YW5kcmUgR2hpdGkgPGFsZXhAZ2hpdGkuZnI+Cj4gCj4g UXVpdGUgYSBmZXcgI2lmZGVmIGJ1dCBJIGRvbid0IHNlZSBhbnkgYmV0dGVyIHdheSBhdCB0aGUg bW9tZW50LiBNYXliZSB3ZSBjYW4KPiBjbGVhbiB0aGlzIGxhdGVyLiBPdGhlcndpc2UgbG9va3Mg Z29vZCB0byBtZS4KPiAKPiBSZXZpZXdlZC1ieTogQW51cCBQYXRlbCA8YW51cEBicmFpbmZhdWx0 Lm9yZz4KClRoYW5rcyBBbnVwIQoKQFBhbG1lcjogVGhpcyBpcyBub3Qgb24gZm9yLW5leHQgeWV0 IGFuZCB0aGVuIHJ2MzIgaXMgYnJva2VuLiBUaGlzIGRvZXMgCm5vdCBhcHBseSBpbW1lZGlhdGVs eSBvbiB0b3Agb2YgZm9yLW5leHQgdGhvdWdoLCBzbyBpZiB5b3UgbmVlZCBhIG5ldyAKdmVyc2lv biwgSSBjYW4gZG8gdGhhdC4gQnV0IHRoaXMgc3F1YXNoZXMgbmljZWx5IHdpdGggdGhlIHBhdGNo IGl0IGZpeGVzIAppZiB5b3UgcHJlZmVyLgoKTGV0IG1lIGtub3csIEkgY2FuIGRvIHRoYXQgdmVy eSBxdWlja2x5LgoKQWxleAoKPiAKPiBSZWdhcmRzLAo+IEFudXAKPiAKPj4gLS0tCj4+ICAgYXJj aC9yaXNjdi9pbmNsdWRlL2FzbS9wYWdlLmggICAgfCAgOSArKysrKysrKysKPj4gICBhcmNoL3Jp c2N2L2luY2x1ZGUvYXNtL3BndGFibGUuaCB8IDE2ICsrKysrKysrKysrKy0tLS0KPj4gICBhcmNo L3Jpc2N2L21tL2luaXQuYyAgICAgICAgICAgICB8IDI1ICsrKysrKysrKysrKysrKysrKysrKysr Ky0KPj4gICAzIGZpbGVzIGNoYW5nZWQsIDQ1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0p Cj4+Cj4+IGRpZmYgLS1naXQgYS9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL3BhZ2UuaCBiL2FyY2gv cmlzY3YvaW5jbHVkZS9hc20vcGFnZS5oCj4+IGluZGV4IDIyY2ZiMmJlNjBkYy4uZjY0YjYxMjk2 YzBjIDEwMDY0NAo+PiAtLS0gYS9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL3BhZ2UuaAo+PiArKysg Yi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL3BhZ2UuaAo+PiBAQCAtOTAsMTUgKzkwLDIwIEBAIHR5 cGVkZWYgc3RydWN0IHBhZ2UgKnBndGFibGVfdDsKPj4KPj4gICAjaWZkZWYgQ09ORklHX01NVQo+ PiAgIGV4dGVybiB1bnNpZ25lZCBsb25nIHZhX3BhX29mZnNldDsKPj4gKyNpZmRlZiBDT05GSUdf NjRCSVQKPj4gICBleHRlcm4gdW5zaWduZWQgbG9uZyB2YV9rZXJuZWxfcGFfb2Zmc2V0Owo+PiAr I2VuZGlmCj4+ICAgZXh0ZXJuIHVuc2lnbmVkIGxvbmcgcGZuX2Jhc2U7Cj4+ICAgI2RlZmluZSBB UkNIX1BGTl9PRkZTRVQgICAgICAgICAgICAgICAgKHBmbl9iYXNlKQo+PiAgICNlbHNlCj4+ICAg I2RlZmluZSB2YV9wYV9vZmZzZXQgICAgICAgICAgIDAKPj4gKyNpZmRlZiBDT05GSUdfNjRCSVQK Pj4gICAjZGVmaW5lIHZhX2tlcm5lbF9wYV9vZmZzZXQgICAgMAo+PiArI2VuZGlmCj4+ICAgI2Rl ZmluZSBBUkNIX1BGTl9PRkZTRVQgICAgICAgICAgICAgICAgKFBBR0VfT0ZGU0VUID4+IFBBR0Vf U0hJRlQpCj4+ICAgI2VuZGlmIC8qIENPTkZJR19NTVUgKi8KPj4KPj4gKyNpZmRlZiBDT05GSUdf NjRCSVQKPj4gICBleHRlcm4gdW5zaWduZWQgbG9uZyBrZXJuZWxfdmlydF9hZGRyOwo+Pgo+PiAg ICNkZWZpbmUgbGluZWFyX21hcHBpbmdfcGFfdG9fdmEoeCkgICAgICgodm9pZCAqKSgodW5zaWdu ZWQgbG9uZykoeCkgKyB2YV9wYV9vZmZzZXQpKQo+PiBAQCAtMTEyLDYgKzExNywxMCBAQCBleHRl cm4gdW5zaWduZWQgbG9uZyBrZXJuZWxfdmlydF9hZGRyOwo+PiAgICAgICAgICAoX3ggPCBrZXJu ZWxfdmlydF9hZGRyKSA/ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcCj4+ICAgICAgICAgICAgICAgICAgbGluZWFyX21hcHBpbmdfdmFfdG9fcGEoX3gpIDog a2VybmVsX21hcHBpbmdfdmFfdG9fcGEoX3gpOyAgICAgIFwKPj4gICAgICAgICAgfSkKPj4gKyNl bHNlCj4+ICsjZGVmaW5lIF9fcGFfdG9fdmFfbm9kZWJ1Zyh4KSAgKCh2b2lkICopKCh1bnNpZ25l ZCBsb25nKSAoeCkgKyB2YV9wYV9vZmZzZXQpKQo+PiArI2RlZmluZSBfX3ZhX3RvX3BhX25vZGVi dWcoeCkgICgodW5zaWduZWQgbG9uZykoeCkgLSB2YV9wYV9vZmZzZXQpCj4+ICsjZW5kaWYKPj4K Pj4gICAjaWZkZWYgQ09ORklHX0RFQlVHX1ZJUlRVQUwKPj4gICBleHRlcm4gcGh5c19hZGRyX3Qg X192aXJ0X3RvX3BoeXModW5zaWduZWQgbG9uZyB4KTsKPj4gZGlmZiAtLWdpdCBhL2FyY2gvcmlz Y3YvaW5jbHVkZS9hc20vcGd0YWJsZS5oIGIvYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9wZ3RhYmxl LmgKPj4gaW5kZXggODBlNjNhOTNlOTAzLi41YWZkYTc1Y2MyYzMgMTAwNjQ0Cj4+IC0tLSBhL2Fy Y2gvcmlzY3YvaW5jbHVkZS9hc20vcGd0YWJsZS5oCj4+ICsrKyBiL2FyY2gvcmlzY3YvaW5jbHVk ZS9hc20vcGd0YWJsZS5oCj4+IEBAIC0xNiwxOSArMTYsMjcgQEAKPj4gICAjZWxzZQo+Pgo+PiAg ICNkZWZpbmUgQUREUkVTU19TUEFDRV9FTkQgICAgICAoVUwoLTEpKQo+PiAtLyoKPj4gLSAqIExl YXZlIDJHQiBmb3Iga2VybmVsIGFuZCBCUEYgYXQgdGhlIGVuZCBvZiB0aGUgYWRkcmVzcyBzcGFj ZQo+PiAtICovCj4+ICsKPj4gKyNpZmRlZiBDT05GSUdfNjRCSVQKPj4gKy8qIExlYXZlIDJHQiBm b3Iga2VybmVsIGFuZCBCUEYgYXQgdGhlIGVuZCBvZiB0aGUgYWRkcmVzcyBzcGFjZSAqLwo+PiAg ICNkZWZpbmUgS0VSTkVMX0xJTktfQUREUiAgICAgICAoQUREUkVTU19TUEFDRV9FTkQgLSBTWl8y RyArIDEpCj4+ICsjZWxzZQo+PiArI2RlZmluZSBLRVJORUxfTElOS19BRERSICAgICAgIFBBR0Vf T0ZGU0VUCj4+ICsjZW5kaWYKPj4KPj4gICAjZGVmaW5lIFZNQUxMT0NfU0laRSAgICAgKEtFUk5f VklSVF9TSVpFID4+IDEpCj4+ICAgI2RlZmluZSBWTUFMTE9DX0VORCAgICAgIChQQUdFX09GRlNF VCAtIDEpCj4+ICAgI2RlZmluZSBWTUFMTE9DX1NUQVJUICAgIChQQUdFX09GRlNFVCAtIFZNQUxM T0NfU0laRSkKPj4KPj4gLS8qIEtBU0xSIHNob3VsZCBsZWF2ZSBhdCBsZWFzdCAxMjhNQiBmb3Ig QlBGIGFmdGVyIHRoZSBrZXJuZWwgKi8KPj4gICAjZGVmaW5lIEJQRl9KSVRfUkVHSU9OX1NJWkUg ICAgKFNaXzEyOE0pCj4+ICsjaWZkZWYgQ09ORklHXzY0QklUCj4+ICsvKiBLQVNMUiBzaG91bGQg bGVhdmUgYXQgbGVhc3QgMTI4TUIgZm9yIEJQRiBhZnRlciB0aGUga2VybmVsICovCj4+ICAgI2Rl ZmluZSBCUEZfSklUX1JFR0lPTl9TVEFSVCAgIFBGTl9BTElHTigodW5zaWduZWQgbG9uZykmX2Vu ZCkKPj4gICAjZGVmaW5lIEJQRl9KSVRfUkVHSU9OX0VORCAgICAgKEJQRl9KSVRfUkVHSU9OX1NU QVJUICsgQlBGX0pJVF9SRUdJT05fU0laRSkKPj4gKyNlbHNlCj4+ICsjZGVmaW5lIEJQRl9KSVRf UkVHSU9OX1NUQVJUICAgKFBBR0VfT0ZGU0VUIC0gQlBGX0pJVF9SRUdJT05fU0laRSkKPj4gKyNk ZWZpbmUgQlBGX0pJVF9SRUdJT05fRU5EICAgICAoVk1BTExPQ19FTkQpCj4+ICsjZW5kaWYKPj4K Pj4gICAvKiBNb2R1bGVzIGFsd2F5cyBsaXZlIGJlZm9yZSB0aGUga2VybmVsICovCj4+ICAgI2lm ZGVmIENPTkZJR182NEJJVAo+PiBkaWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9tbS9pbml0LmMgYi9h cmNoL3Jpc2N2L21tL2luaXQuYwo+PiBpbmRleCAwOTNmM2E5NmVjZmMuLmRjOWI5ODhlMDc3OCAx MDA2NDQKPj4gLS0tIGEvYXJjaC9yaXNjdi9tbS9pbml0LmMKPj4gKysrIGIvYXJjaC9yaXNjdi9t bS9pbml0LmMKPj4gQEAgLTkxLDggKzkxLDEwIEBAIHN0YXRpYyB2b2lkIHByaW50X3ZtX2xheW91 dCh2b2lkKQo+PiAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGxvbmcpVk1BTExPQ19FTkQp Owo+PiAgICAgICAgICBwcmludF9tbG0oImxvd21lbSIsICh1bnNpZ25lZCBsb25nKVBBR0VfT0ZG U0VULAo+PiAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGxvbmcpaGlnaF9tZW1vcnkpOwo+ PiArI2lmZGVmIENPTkZJR182NEJJVAo+PiAgICAgICAgICBwcmludF9tbG0oImtlcm5lbCIsICh1 bnNpZ25lZCBsb25nKUtFUk5FTF9MSU5LX0FERFIsCj4+ICAgICAgICAgICAgICAgICAgICAodW5z aWduZWQgbG9uZylBRERSRVNTX1NQQUNFX0VORCk7Cj4+ICsjZW5kaWYKPj4gICB9Cj4+ICAgI2Vs c2UKPj4gICBzdGF0aWMgdm9pZCBwcmludF92bV9sYXlvdXQodm9pZCkgeyB9Cj4+IEBAIC0xNjUs OSArMTY3LDExIEBAIHN0YXRpYyBzdHJ1Y3QgcHRfYWxsb2Nfb3BzIHB0X29wczsKPj4gICAvKiBP ZmZzZXQgYmV0d2VlbiBsaW5lYXIgbWFwcGluZyB2aXJ0dWFsIGFkZHJlc3MgYW5kIGtlcm5lbCBs b2FkIGFkZHJlc3MgKi8KPj4gICB1bnNpZ25lZCBsb25nIHZhX3BhX29mZnNldDsKPj4gICBFWFBP UlRfU1lNQk9MKHZhX3BhX29mZnNldCk7Cj4+ICsjaWZkZWYgQ09ORklHXzY0QklUCj4+ICAgLyog T2Zmc2V0IGJldHdlZW4ga2VybmVsIG1hcHBpbmcgdmlydHVhbCBhZGRyZXNzIGFuZCBrZXJuZWwg bG9hZCBhZGRyZXNzICovCj4+ICAgdW5zaWduZWQgbG9uZyB2YV9rZXJuZWxfcGFfb2Zmc2V0Owo+ PiAgIEVYUE9SVF9TWU1CT0wodmFfa2VybmVsX3BhX29mZnNldCk7Cj4+ICsjZW5kaWYKPj4gICB1 bnNpZ25lZCBsb25nIHBmbl9iYXNlOwo+PiAgIEVYUE9SVF9TWU1CT0wocGZuX2Jhc2UpOwo+Pgo+ PiBAQCAtNDEwLDcgKzQxNCw5IEBAIGFzbWxpbmthZ2Ugdm9pZCBfX2luaXQgc2V0dXBfdm0odWlu dHB0cl90IGR0Yl9wYSkKPj4gICAgICAgICAgbG9hZF9zeiA9ICh1aW50cHRyX3QpKCZfZW5kKSAt IGxvYWRfcGE7Cj4+Cj4+ICAgICAgICAgIHZhX3BhX29mZnNldCA9IFBBR0VfT0ZGU0VUIC0gbG9h ZF9wYTsKPj4gKyNpZmRlZiBDT05GSUdfNjRCSVQKPj4gICAgICAgICAgdmFfa2VybmVsX3BhX29m ZnNldCA9IGtlcm5lbF92aXJ0X2FkZHIgLSBsb2FkX3BhOwo+PiArI2VuZGlmCj4+Cj4+ICAgICAg ICAgIHBmbl9iYXNlID0gUEZOX0RPV04obG9hZF9wYSk7Cj4+Cj4+IEBAIC00NjksMTIgKzQ3NSwx NiBAQCBhc21saW5rYWdlIHZvaWQgX19pbml0IHNldHVwX3ZtKHVpbnRwdHJfdCBkdGJfcGEpCj4+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYSArIFBNRF9TSVpFLCBQTURfU0laRSwgUEFH RV9LRVJORUwpOwo+PiAgICAgICAgICBkdGJfZWFybHlfdmEgPSAodm9pZCAqKURUQl9FQVJMWV9C QVNFX1ZBICsgKGR0Yl9wYSAmIChQTURfU0laRSAtIDEpKTsKPj4gICAjZWxzZSAvKiBDT05GSUdf QlVJTFRJTl9EVEIgKi8KPj4gKyNpZmRlZiBDT05GSUdfNjRCSVQKPj4gICAgICAgICAgLyoKPj4g ICAgICAgICAgICogX192YSBjYW4ndCBiZSB1c2VkIHNpbmNlIGl0IHdvdWxkIHJldHVybiBhIGxp bmVhciBtYXBwaW5nIGFkZHJlc3MKPj4gICAgICAgICAgICogd2hlcmVhcyBkdGJfZWFybHlfdmEg d2lsbCBiZSB1c2VkIGJlZm9yZSBzZXR1cF92bV9maW5hbCBpbnN0YWxscwo+PiAgICAgICAgICAg KiB0aGUgbGluZWFyIG1hcHBpbmcuCj4+ICAgICAgICAgICAqLwo+PiAgICAgICAgICBkdGJfZWFy bHlfdmEgPSBrZXJuZWxfbWFwcGluZ19wYV90b192YShkdGJfcGEpOwo+PiArI2Vsc2UKPj4gKyAg ICAgICBkdGJfZWFybHlfdmEgPSBfX3ZhKGR0Yl9wYSk7Cj4+ICsjZW5kaWYgLyogQ09ORklHXzY0 QklUICovCj4+ICAgI2VuZGlmIC8qIENPTkZJR19CVUlMVElOX0RUQiAqLwo+PiAgICNlbHNlCj4+ ICAgI2lmbmRlZiBDT05GSUdfQlVJTFRJTl9EVEIKPj4gQEAgLTQ4Niw3ICs0OTYsMTEgQEAgYXNt bGlua2FnZSB2b2lkIF9faW5pdCBzZXR1cF92bSh1aW50cHRyX3QgZHRiX3BhKQo+PiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgcGEgKyBQR0RJUl9TSVpFLCBQR0RJUl9TSVpFLCBQQUdFX0tF Uk5FTCk7Cj4+ICAgICAgICAgIGR0Yl9lYXJseV92YSA9ICh2b2lkICopRFRCX0VBUkxZX0JBU0Vf VkEgKyAoZHRiX3BhICYgKFBHRElSX1NJWkUgLSAxKSk7Cj4+ICAgI2Vsc2UgLyogQ09ORklHX0JV SUxUSU5fRFRCICovCj4+ICsjaWZkZWYgQ09ORklHXzY0QklUCj4+ICAgICAgICAgIGR0Yl9lYXJs eV92YSA9IGtlcm5lbF9tYXBwaW5nX3BhX3RvX3ZhKGR0Yl9wYSk7Cj4+ICsjZWxzZQo+PiArICAg ICAgIGR0Yl9lYXJseV92YSA9IF9fdmEoZHRiX3BhKTsKPj4gKyNlbmRpZiAvKiBDT05GSUdfNjRC SVQgKi8KPj4gICAjZW5kaWYgLyogQ09ORklHX0JVSUxUSU5fRFRCICovCj4+ICAgI2VuZGlmCj4+ ICAgICAgICAgIGR0Yl9lYXJseV9wYSA9IGR0Yl9wYTsKPj4gQEAgLTU3MSwxMiArNTg1LDIxIEBA IHN0YXRpYyB2b2lkIF9faW5pdCBzZXR1cF92bV9maW5hbCh2b2lkKQo+PiAgICAgICAgICAgICAg ICAgIGZvciAocGEgPSBzdGFydDsgcGEgPCBlbmQ7IHBhICs9IG1hcF9zaXplKSB7Cj4+ICAgICAg ICAgICAgICAgICAgICAgICAgICB2YSA9ICh1aW50cHRyX3QpX192YShwYSk7Cj4+ICAgICAgICAg ICAgICAgICAgICAgICAgICBjcmVhdGVfcGdkX21hcHBpbmcoc3dhcHBlcl9wZ19kaXIsIHZhLCBw YSwKPj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcF9zaXpl LCBQQUdFX0tFUk5FTCk7Cj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBtYXBfc2l6ZSwKPj4gKyNpZmRlZiBDT05GSUdfNjRCSVQKPj4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBBR0VfS0VSTkVMCj4+ICsjZWxzZQo+PiArICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEFHRV9LRVJORUxfRVhFQwo+ PiArI2VuZGlmCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApOwo+ PiArCj4+ICAgICAgICAgICAgICAgICAgfQo+PiAgICAgICAgICB9Cj4+Cj4+ICsjaWZkZWYgQ09O RklHXzY0QklUCj4+ICAgICAgICAgIC8qIE1hcCB0aGUga2VybmVsICovCj4+ICAgICAgICAgIGNy ZWF0ZV9rZXJuZWxfcGFnZV90YWJsZShzd2FwcGVyX3BnX2RpciwgUE1EX1NJWkUpOwo+PiArI2Vu ZGlmCj4+Cj4+ICAgICAgICAgIC8qIENsZWFyIGZpeG1hcCBQVEUgYW5kIFBNRCBtYXBwaW5ncyAq Lwo+PiAgICAgICAgICBjbGVhcl9maXhtYXAoRklYX1BURSk7Cj4+IC0tCj4+IDIuMjAuMQo+PgoK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtcmlz Y3YgbWFpbGluZyBsaXN0CmxpbnV4LXJpc2N2QGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xp c3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1yaXNjdgo=