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 B8978C433F5 for ; Mon, 10 Jan 2022 11:28:03 +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=91pPOQbGjzNPB/A3eoKfdjDeCTyGYjAYY7Kpi1ScwgQ=; b=sraTw3AkPWj0uZ PjHqhKRz/elVXxQgQqw0PS1f1lqiqjY6QKtAzXthxdMmc0yEylzu+i3BcnnxNcIQl5zMZhHPT8IDZ FE1ce/KBMaihCZYP6lokOXgi1ukUst62Xy1ddcbjrDAVx3KqLqhFIL0pauASB//dwSqhHpC2I85ao NCkH4+3asBlX/w/xHAQc2Wazc7GfTCPG9VoDa5tu8NcGlxPupt2i/mcgfZOP6970b0hL7yUxfJRQQ NKQFjKwjSdAobr2CK/Up0DJazYScLgCufJ/xcuDgDEW1MB5SZaPgnfXzLHxXzVtA4/hXEU/6FRm+O sONpfhMvAPs8Hef2ZH0w==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1n6soy-00B5iu-Cd; Mon, 10 Jan 2022 11:26:40 +0000 Received: from foss.arm.com ([217.140.110.172]) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1n6sou-00B5iB-D5 for linux-arm-kernel@lists.infradead.org; Mon, 10 Jan 2022 11:26:38 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 869FB2B; Mon, 10 Jan 2022 03:26:35 -0800 (PST) Received: from FVFF77S0Q05N (unknown [10.57.11.128]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id E39EB3F5A1; Mon, 10 Jan 2022 03:26:33 -0800 (PST) Date: Mon, 10 Jan 2022 11:26:29 +0000 From: Mark Rutland To: He Ying Cc: catalin.marinas@arm.com, will@kernel.org, marcan@marcan.st, maz@kernel.org, joey.gouly@arm.com, pcc@google.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] arm64: Make CONFIG_ARM64_PSEUDO_NMI macro wrap all the pseudo-NMI code Message-ID: References: <20220107085536.214501-1-heying24@huawei.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220110_032636_578904_583EE628 X-CRM114-Status: GOOD ( 68.70 ) X-BeenThere: linux-arm-kernel@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-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gTW9uLCBKYW4gMTAsIDIwMjIgYXQgMTE6MDA6NDNBTSArMDgwMCwgSGUgWWluZyB3cm90ZToK PiBIaSBNYXJrLAo+IAo+IEknbSBqdXN0IGJhY2sgZnJvbSB0aGUgd2Vla2VuZCBhbmQgc29ycnkg Zm9yIHRoZSBkZWxheWVkIHJlcGx5Lgo+IAo+IAo+IOWcqCAyMDIyLzEvNyAyMToxOSwgTWFyayBS dXRsYW5kIOWGmemBkzoKPiA+IE9uIEZyaSwgSmFuIDA3LCAyMDIyIGF0IDAzOjU1OjM2QU0gLTA1 MDAsIEhlIFlpbmcgd3JvdGU6Cj4gPiA+IE91ciBwcm9kdWN0IGhhcyBiZWVuIHVwZGF0aW5nIGl0 cyBrZXJuZWwgZnJvbSA0LjQgdG8gNS4xMCByZWNlbnRseSBhbmQKPiA+ID4gZm91bmQgYSBwZXJm b3JtYW5jZSBpc3N1ZS4gV2UgZG8gYSBidXNzaW5lc3MgdGVzdCBjYWxsZWQgQVJQIHRlc3QsIHdo aWNoCj4gPiA+IHRlc3RzIHRoZSBsYXRlbmN5IGZvciBhIHBpbmctcG9uZyBwYWNrZXRzIHRyYWZm aWMgd2l0aCBhIGNlcnRhaW4gcGF5bG9hZC4KPiA+ID4gVGhlIHJlc3VsdCBpcyBhcyBmb2xsb3dp bmcuCj4gPiA+IAo+ID4gPiAgIC0gNC40IGtlcm5lbDogYXZnID0gfjIwcwo+ID4gPiAgIC0gNS4x MCBrZXJuZWwgKENPTkZJR19BUk02NF9QU0VVRE9fTk1JIGlzIG5vdCBzZXQpOiBhdmcgPSB+NDBz Cj4gPiBIYXZlIHlvdSB0ZXN0ZWQgd2l0aCBhIHJlY2VudCBtYWlubGluZSBrZXJuZWwsIGUuZy4g djUuMTU/Cj4gCj4gQWN0dWFsbGx5IG5vLCB0aGF0J3MgYmVjYXVzZSB0aGlzIHRlc3QgaXMgb25s eSBhdmFpbGFibGUgZm9yIHRoZSBwcm9kdWN0Cj4gZW52aXJvbm1lbnQgYW5kCj4gCj4gd2UgZG9u J3QgaGF2ZSBhbiBhdmFpbGFibGUgNS4xNSBrZXJuZWwgZm9yIGl0IHlldC4KCk9rOyBkbyB5b3Ug c2VlIGFueXRoaW5nIGNvbXBhcmFibGUgd2l0aCBhbnkgdGVzdHMgYXZhaWxhYmxlIHRvIHVwc3Ry ZWFtCmRldmVsb3BlcnM/IGUuZy4gaGFja2JlbmNoIG9yIGBwZXJmIGJlbmNoIHNjaGVkYCA/Cgo+ ID4gSXMgdGhpcyB0ZXN0IHB1YmxpY2x5IGF2YWlsYWJsZSwgYW5kIGNhbiB5b3Ugc2F5IHdoaWNo IGhhcmRyd2FyZSAoZS5nLiB3aGljaAo+ID4gQ1BVIGltcGxlbWVudGF0aW9uKSB5b3UncmUgdGVz dGluZyB3aXRoPwo+IAo+IEFjdHVhbGx5IG5vLiBUaGUgdGVzdCBpcyBvbmx5IGF2YWlsYWJsZSBm b3Igb3VyIHByb2R1Y3QgZW52aXJvbm1lbnQgbm93LiBXZQo+IGFyZSB0ZXN0aW5nCj4gCj4gd2l0 aCBoaXNpbGljb24gMTIxMyAoNCBBUk0gQ29ydGV4LUE3MiBjb3JlcykuCgpUaGFua3MgZm9yIHRo ZSBDUFUgaW5mbzsgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIG90aGVyIENvcnRleC1BNzIgcGxhdGZv cm1zIG91dAp0aGVyZSwgc28gaXQgbWlnaHQgYmUgcG9zc2libGUgdG8gcmVwcm9kdWNlIHRoZSBi ZWhhdmlvdXIgZWxzZXdoZXJlLgoKPiA+ID4gSSBoYXZlIGJlZW4ganVzdCBsZWFybmluZyBhcm02 NCBwc2V1ZG8tTk1JIGNvZGUgYW5kIGhhdmUgYSBxdWVzdGlvbiwKPiA+ID4gd2h5IGlzIHRoZSBy ZWxhdGVkIGNvZGUgbm90IHdyYXBwZWQgYnkgQ09ORklHX0FSTTY0X1BTRVVET19OTUk/Cj4gPiBU aGUgY29kZSBpbiBxdWVzdGlvbiBpcyBhbGwgcGF0Y2hlZCB2aWEgYWx0ZXJuYXRpdmVzLCBhbmQg d2hlbgo+ID4gQ09ORklHX0FSTTY0X1BTRVVET19OTUkgaXMgbm90IHNlbGVjdGVkLCB0aGUgY29k ZSB3YXMgZXhwZWN0ZWQgdG8gb25seSBoYXZlIHRoZQo+ID4gb3ZlcmhlYWQgb2YgdGhlIHJlZ3Vs YXIgREFJRiBtYW5pcHVsYXRpb24uCj4gSSBkb24ndCB1bmRlcnN0YW5kIGFsZXJuYXRpdmVzIHZl cnkgd2VsbCBhbmQgSSdsbCBhcHJlY2lhdGUgaXQgaWYgeW91IGNhbgo+IGV4cGxhaW4gaXQgYSBi aXQgbW9yZS4KCkNvZGUgdXNpbmcgYWx0ZXJuYXRpdmVzIGlzIHBhdGNoZWQgYXQgcnVudGltZSwg c28gZm9yOgoKCUFMVEVSTkFUSVZFKHgsIHksIGNhcCkKCi4uLiB0aGUgYHhgIGluc3RydWN0aW9u cyB3aWxsIGJlIGlubGluZSBpbiB0aGUgY29kZSwgYW5kIHRoZSBgeWAgaW5zdHJ1Y3Rpb25zCndp bGwgYmUgcGxhY2VkIGluIGEgc2VwYXJhdGUgbGlua2VyIHNlY3Rpb24uIElmIHRoZSBgY2FwYCBj YXBhYmlsaXR5IGlzCmRldGVjdGVkLCB0aGUgYHlgIGluc3RydWN0aW9ucyB3aWxsIGJlIGNvcGll ZCBvdmVyIHRoZSBgeGAgaW5zdHJ1Y3Rpb25zLgoKU28gZm9yOgoKfCBhc20gdm9sYXRpbGUoQUxU RVJOQVRJVkUoCnwgICAgICAgICAibXNyICAgIGRhaWZjbHIsICMzICAgICAgICAgICAgIC8vIGFy Y2hfbG9jYWxfaXJxX2VuYWJsZSIsCnwgICAgICAgICBfX21zcl9zKFNZU19JQ0NfUE1SX0VMMSwg IiUwIiksCnwgICAgICAgICBBUk02NF9IQVNfSVJRX1BSSU9fTUFTS0lORykKfCAgICAgICAgIDoK fCAgICAgICAgIDogInIiICgodW5zaWduZWQgbG9uZykgR0lDX1BSSU9fSVJRT04pCnwgICAgICAg ICA6ICJtZW1vcnkiKTsKCi4uLiB3aGVyZSBBUk02NF9IQVNfSVJRX1BSSU9fTUFTS0lORyBpcyBu b3QgZGV0ZWN0ZWQsIHRoZSBpbmxpbmUgaW5zdHJ1Y3Rpb25zCndpbGwgYmU6Cgp8IG1zciAgICBk YWlmY2xyLCAjMyAgICAgICAgICAgICAvLyBhcmNoX2xvY2FsX2lycV9lbmFibGUgCgpBIHNlcGFy YXRlIGxpbmtlciBzZWN0aW9uIHdpbGwgY29udGFpbjoKLi4uIGFuZCBhIHNlcGFyYXRlIGxpbmtl ciBzZWN0aW9uIHdpbGwgY29udGFpbjoKCnwgX19tc3JfcyhTWVNfSUNDX1BNUl9FTDEsICIlMCIK Ci4uLiBhbmQgc29tZSBtZXRhZGF0YSB3aWxsIGJlIHJlY29yZGVkIGluIGEgYHN0cnVjdCBhbHRf aW5zdHJgLCB3aGljaCB3aWxsIGJlCnVudXNlZCBhbmQgd2lsbCB0YWtlIHNvbWUgc3BhY2UsIGJ1 dCBzaG91bGQgaGF2ZSBubyBydW50aW1lIG92ZXJoZWFkIC0tIHRoZQpydW50aW1lIGNvc3Qgc2hv dWxkIG9ubHkgYmUgdGhlIGBtc3IgZGFpZmNsciwgIzNgIGluc3RydWN0aW9uLgoKPiA+ID4gSSB3 b25kZXIgaWYgdGhpcyBicmluZ3Mgc29tZSBwZXJmb3JtYW5jZSByZWdyZXNzaW9uLgo+ID4gPiAK PiA+ID4gRmlyc3QsIEkgbWFrZSB0aGlzIHBhdGNoIGFuZCB0aGVuIGRvIHRoZSB0ZXN0IGFnYWlu LiBIZXJlJ3MgdGhlIHJlc3VsdC4KPiA+ID4gCj4gPiA+ICAgLSA1LjEwIGtlcm5lbCB3aXRoIHRo aXMgcGF0Y2ggbm90IGFwcGxpZWQ6IGF2ZyA9IH40MHMKPiA+ID4gICAtIDUuMTAga2VybmVsIHdp dGggdGhpcyBwYXRjaCBhcHBsaWVkOiBhdmcgPSB+MjNzCj4gPiA+IAo+ID4gPiBBbWF6aW5nISBO b3RlIHRoYXQgYWxsIGtlcm5lbCBpcyBidWlsdCB3aXRoIENPTkZJR19BUk02NF9QU0VVRE9fTk1J IG5vdAo+ID4gPiBzZXQuIEl0IHNlZW1zIHRoZSBwc2V1ZG8tTk1JIGZlYXR1cmUgYWN0dWFsbHkg YnJpbmdzIHNvbWUgb3ZlcmhlYWQgdG8KPiA+ID4gcGVyZm9ybWFuY2UgZXZlbnQgaWYgQ09ORklH X0FSTTY0X1BTRVVET19OTUkgaXMgbm90IHNldC4KPiA+IEknbSBzdXJwcmlzZWQgdGhlIG92ZXJo ZWFkIGlzIHNvIHNpZ25pZmljYW50OyBhcyBhYm92ZSB0aGlzIGlzIGFsbCBwYXRjaGVkIGluCj4g PiBhbmQgc28gdGhlIG92ZXJoZWFkIHdoZW4gdGhpcyBpcyBkaXNhYmxlZCBpcyBleHBlY3RlZCB0 byBiZSAqZXh0cmVtZWx5KiBzbWFsbC4KPiA+IAo+ID4gRm9yIGV4YW1wbGUsIHdqZW4gQ09ORklH X0FSTTY0X1BTRVVET19OTUksIGluIGFyY2hfbG9jYWxfaXJxX2VuYWJsZSgpOgo+ID4gCj4gPiAq IFRoZSBwb3J0aW9uIHVuZGVyIHRoZSBzeXN0ZW1faGFzX3ByaW9fbWFza19kZWJ1Z2dpbmcoKSB0 ZXN0IHdpbGwgYmUgcmVtb3ZlZAo+ID4gICAgZW50aXJlbHkgYnkgdGhlIGNvbXBpbGVyLCBhcyB0 aGlzIGludGVybmFsbHkgY2hlY2tzCj4gPiAgICBJU19FTkFCTEVEKENPTkZJR19BUk02NF9QU0VV RE9fTk1JKS4KPiA+IAo+ID4gKiBUaGUgYXNzZW1ibHkgd2lsbCBiZSBsZWZ0IGFzIGEgd3JpdGUg dG8gREFJRkNsci4gVGhlIG9ubHkgYWRkaXRpb25hbCBjb3N0Cj4gPiAgICBzaG91bGQgYmUgdGhh dCBvZiBnZW5lcmF0aW5nIEdJQ19QUklPX0lSUU9OIGludG8gYSByZWdpc3Rlci4KPiA+IAo+ID4g KiBUaGUgcG1yX3N5bmMoKSB3aWxsIGJlIHJlbW92ZWQgZW50aXJlbHkgYnkgdGhlIGNvbXBpbGVy IGFzIGlzIGRlZmluZWQKPiA+ICAgIGNvbmRpdGlvbmFsbHkgZGVwZW5kZW50IG9uIENPTkZJR19B Uk02NF9QU0VVRE9fTk1JLgo+ID4gCj4gPiBJIGNhbid0IHNwb3QgYW4gb2J2aW91cyBpc3N1ZSB3 aXRoIHRoYXQgb3IgdGhlciBvdGhlciBjYXNlcy4gSW4gdGhlIGNvbW1vbiBjYXNlCj4gPiB0aG9z ZSBhZGQgbm8gbmV3IGluc3RydWN0aW9ucywgYW5kIGluIHRoZSB3b3JzdCBjYXNlIHRoZXkgb25s eSBhZGQgTk9Qcy4KPiAKPiBUaGFua3MgZm9yIHlvdXIgZGV0YWlsZWQgZXhwbGFpbmF0aW9uISBB Y3R1YWxseSBJIGNhbid0IHVuZGVyc3RhbmQgdGhlCj4gcmVzdWx0IGV4YWN0bHkuCj4gCj4gSSBi dWlsZCB0d28gNS4xMCBrZXJuZWwgaW1hZ2VzIHdpdGggdGhpcyBwYXRjaCBhcHBsaWVkIG9yIG5v dCBhbmQgb2JqZHVtcAo+IHRoZW0uIEluZGVlZCwgdGhlIGRpc2Fzc2VtYmxlcyBvZiAnYXJjaF9s b2NhbF9pcnFfcmVzdG9yZScgYXJlIHRoZSBzYW1lLiBEbwo+IHlvdSBoYXZlIGFueSBpZGVhcyBo b3cgd2UgY2FuIGZpbmQgdGhlIHJvb3QgY2F1c2Ugd2h5IHRoaXMgcGF0Y2ggaW1wcm92ZXMgdGhl Cj4gcGVyZm9ybWFuY2Ugc28gbXVjaD8KPiAKPiBIb3dldmVyLCB0aGUgdGVzdCByZXN1bHQgaXMg dHJ1c3R3b3J0aHkgYmVjYXVzZSB3ZSBkbyBpdCBtYW55IHRpbWVzIGFuZCB0aGUKPiByZXN1bHQg aXMgYWx3YXlzIHJlcGVhdGFibGUuCgpEdWUgdG8gdGhlIGxhcmdlIG51bWJlcnMsIEkgc3VzcGVj dCB0aGlzIG11c3QgYmUgZHVlIHRvIGEgc3BlY2lmaWMgZmFzdC1wYXRoLAphbmQgaXQncyBwb3Nz aWJsZSB0aGF0IHRoaXMgaXMgZHVlIHRvIHNlY29uZGFyeSBmYWN0b3JzIChlLmcuIGFsaWdubWVu dCBvZgpjb2RlKSByYXRoZXIgdGhhbiB0aGUgcHNldWRvLU5NSyBjb2RlIGl0c2VsZi4KCldlIG5l ZWQgdG8gbmFycm93IGRvd24gKndoZXJlKiB0aW1lIGlzIGJlaW5nIHNwZW50LiBTaW5jZSBpdCBh cHBlYXJzIHRoYXQgdGhpcwppcyByZWxhdGVkIHRvIHRoZSBsb2NhbCBJUlEgc3RhdGUgbWFuYWdl bWVudCwgaXQgaXNuJ3QgbGlrZWx5IHRoYXQgd2UgY2FuCmRldGVybWluZSB0aGF0IHJlbGlhYmx5 IHdpdGggdGhlIFBNVS4gR2l2ZW4gdGhhdCwgSSB0aGluayB0aGUgZmlyc3Qgc3RlcCBpcyB0bwpy ZXByb2R1Y2UgdGhlIHJlc3VsdCBlbHNld2hlcmUsIGZvciB3aGljaCB3ZSB3aWxsIG5lZWQgc29t ZSBwbHVibGljbHkgYXZhaWxhYmxlCnRlc3QtY2FzZS4KCj4gPiA+IEZ1cnRoZXJtb3JlLCBJIGZp bmQgdGhlIGZlYXR1cmUgYWxzbyBicmluZ3Mgc29tZSBvdmVyaGVhZCB0byB2bWxpbnV4IHNpemUu Cj4gPiA+IEkgYnVpbGQgNS4xMCBrZXJuZWwgd2l0aCB0aGlzIHBhdGNoIGFwcGxpZWQgb3Igbm90 IHdoaWxlCj4gPiA+IENPTkZJR19BUk02NF9QU0VVRE9fTk1JIGlzIG5vdCBzZXQuCj4gPiA+IAo+ ID4gPiAgIC0gNS4xMCBrZXJuZWwgd2l0aCB0aGlzIHBhdGNoIG5vdCBhcHBsaWVkOiB2bWxpbnV4 IHNpemUgaXMgMzg0MDYwNjAwIEJ5dGVzLgo+ID4gPiAgIC0gNS4xMCBrZXJuZWwgd2l0aCB0aGlz IHBhdGNoIGFwcGxpZWQ6IHZtbGludXggc2l6ZSBpcyAzODM4NDI5MzYgQnl0ZXMuCj4gPiA+IAo+ ID4gPiBUaGF0IG1lYW5zIGFybTY0IHBzZXVkby1OTUkgZmVhdHVyZSBtYXkgYnJpbmcgfjIwMEtC IG92ZXJoZWFkIHRvCj4gPiA+IHZtbGludXggc2l6ZS4KPiA+IEkgc3VzcGVjdCB0aGF0J3MganVz dCB0aGUgKHVudXNlZCkgYWx0ZXJuYXRpdmVzLCBhbmQgd2UgY291bGQgaW1wcm92ZSB0aGF0IGJ5 Cj4gPiBwYXNzaW5nIHRoZSBjb25maWcgaW50byB0aGUgYWx0ZXJuYXRpdmUgYmxvY2tzLgo+IAo+ IERvIHlvdSBtZWFuIHRoZSBzZWN0aW9ucyBnZW5lcmF0ZWQgYnkgdGhlIGFsdGVybmF0aXZlcz8g SSBkb24ndCB1bmRlcnN0YW5kCj4gYWxlcm5hdGl2ZXMgdmVyeSB3ZWxsIGFuZCBJJ2xsIGFwcmVj aWF0ZSBpdCBpZiB5b3UgY2FuIGV4cGxhaW4gaXQgYSBiaXQKPiBtb3JlLgoKWWVzOyBJIG1lYW50 IHRoZSBzZWN0aW9ucyBnZW5lcmF0ZWQgdG8gaG9sZCB0aGUgYWx0ZXJuYXRpdmVzIGNvZGUgYW5k IHRoZQphbHRlcm5hdGl2ZXMgbWV0YWRhdGEuCgoKPiA+ID4gQWJvdmUgYWxsLCBhcm02NCBwc2V1 ZG8tTk1JIGZlYXR1cmUgYnJpbmdzIHNvbWUgb3ZlcmhlYWQgdG8gdm1saW51eCBzaXplCj4gPiA+ IGFuZCBwZXJmb3JtYW5jZSBldmVuIGlmIGNvbmZpZyBpcyBub3Qgc2V0LiBUbyBhdm9pZCBpdCwg YWRkIG1hY3JvIGNvbnRyb2wKPiA+ID4gYWxsIGFyb3VuZCB0aGUgcmVsYXRlZCBjb2RlLgo+ID4g PiAKPiA+ID4gU2lnbmVkLW9mZi1ieTogSGUgWWluZyA8aGV5aW5nMjRAaHVhd2VpLmNvbT4KPiA+ ID4gLS0tCj4gPiA+ICAgYXJjaC9hcm02NC9pbmNsdWRlL2FzbS9pcnFmbGFncy5oIHwgMzggKysr KysrKysrKysrKysrKysrKysrKysrKysrKystLQo+ID4gPiAgIGFyY2gvYXJtNjQva2VybmVsL2Vu dHJ5LlMgICAgICAgICB8ICA0ICsrKysKPiA+ID4gICAyIGZpbGVzIGNoYW5nZWQsIDQwIGluc2Vy dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCj4gPiA+IAo+ID4gPiBkaWZmIC0tZ2l0IGEvYXJjaC9h cm02NC9pbmNsdWRlL2FzbS9pcnFmbGFncy5oIGIvYXJjaC9hcm02NC9pbmNsdWRlL2FzbS9pcnFm bGFncy5oCj4gPiA+IGluZGV4IGI1N2I5YjFlNDM0NC4uODJmNzcxYjQxY2Y1IDEwMDY0NAo+ID4g PiAtLS0gYS9hcmNoL2FybTY0L2luY2x1ZGUvYXNtL2lycWZsYWdzLmgKPiA+ID4gKysrIGIvYXJj aC9hcm02NC9pbmNsdWRlL2FzbS9pcnFmbGFncy5oCj4gPiA+IEBAIC0yNiw2ICsyNiw3IEBACj4g PiA+ICAgICovCj4gPiA+ICAgc3RhdGljIGlubGluZSB2b2lkIGFyY2hfbG9jYWxfaXJxX2VuYWJs ZSh2b2lkKQo+ID4gPiAgIHsKPiA+ID4gKyNpZmRlZiBDT05GSUdfQVJNNjRfUFNFVURPX05NSQo+ ID4gPiAgIAlpZiAoc3lzdGVtX2hhc19wcmlvX21hc2tfZGVidWdnaW5nKCkpIHsKPiA+ID4gICAJ CXUzMiBwbXIgPSByZWFkX3N5c3JlZ19zKFNZU19JQ0NfUE1SX0VMMSk7Cj4gPiA+IEBAIC00MSwx MCArNDIsMTggQEAgc3RhdGljIGlubGluZSB2b2lkIGFyY2hfbG9jYWxfaXJxX2VuYWJsZSh2b2lk KQo+ID4gPiAgIAkJOiAibWVtb3J5Iik7Cj4gPiA+ICAgCXBtcl9zeW5jKCk7Cj4gPiA+ICsjZWxz ZQo+ID4gPiArCWFzbSB2b2xhdGlsZSgKPiA+ID4gKwkJIm1zcglkYWlmY2xyLCAjMwkJLy8gYXJj aF9sb2NhbF9pcnFfZW5hYmxlIgo+ID4gPiArCQk6Cj4gPiA+ICsJCToKPiA+ID4gKwkJOiAibWVt b3J5Iik7Cj4gPiA+ICsjZW5kaWYKPiA+IEknbSBoYXBweSB0byByZXdvcmsgdGhpcyB0byBpbXBy b3ZlIG1hdHRlcnMsIGJ1dCBJIGFtIHZlcnkgbXVjaCBub3QgaGFwcHkgd2l0aAo+ID4gZHVwbGlj YXRpbmcgdGhlIGxvZ2ljIGZvciB0aGUgIVBTRVVET19OTUkgY2FzZS4gQWRkaW5nIG1vcmUgaWZk ZWZmZXJ5IGFuZAo+ID4gY29waWVzIG9mIHRoYXQgaXMgbm90IGFjY2VwdGFibGUuCj4gSSBhZ3Jl ZS4gQWRkaW5nIHRoZXNlIGlmZGVmZmVyeSBpcyBhIGJpdCB1Z2x5LiBMZXQncyBzZWUgaWYgdGhl cmUgYXJlIHNvbWUKPiBiZXR0ZXIgd2F5cy4KPiA+IAo+ID4gSW5zdGVhZCwgY2FuIHlvdSBwbGVh c2UgdHJ5IGNoYW5naW5nIHRoZSBhbHRlcm5hdGl2ZSB0byBhbHNvIHRha2UgdGhlIGNvbmZpZywK PiA+IGUuZy4gaGVyZSBoYXZlOgo+ID4gCj4gPiB8ICAgICAgIGFzbSB2b2xhdGlsZShBTFRFUk5B VElWRSgKPiA+IHwgICAgICAgICAgICAgICAibXNyICAgIGRhaWZjbHIsICMzICAgICAgICAgICAg IC8vIGFyY2hfbG9jYWxfaXJxX2VuYWJsZSIsCj4gPiB8ICAgICAgICAgICAgICAgX19tc3JfcyhT WVNfSUNDX1BNUl9FTDEsICIlMCIpLAo+ID4gfCAgICAgICAgICAgICAgIEFSTTY0X0hBU19JUlFf UFJJT19NQVNLSU5HLAo+ID4gfCAgICAgICAgICAgICAgIENPTkZJR19BUk02NF9QU0VVRE9fTk1J KQo+ID4gfCAgICAgICAgICAgICAgIDoKPiA+IHwgICAgICAgICAgICAgICA6ICJyIiAoKHVuc2ln bmVkIGxvbmcpIEdJQ19QUklPX0lSUU9OKQo+ID4gfCAgICAgICAgICAgICAgIDogIm1lbW9yeSIp Owo+ID4gCj4gPiAuLi4gYW5kIHNlZSBpZiB0aGF0IG1ha2VzIGEgc2lnbmlmaWNhbnQgZGlmZmVy ZW5jZT8KPiA+IAo+ID4gTGlrZXdpc2UgZm9yIHRoZSBvdGhlciBjYXNlZXMuCj4gCj4gT0ssIEkn bGwgdHJ5IGl0LiBCdXQgSSBoYXZlIHNvbWUgcXVlc3Rpb25zLiBIZXJlJ3MgdGhlIGNvbW1lbnQg b2YKPiBBTEVSTkFUSVZFOgo+IAo+IC8qCj4gwqAqIFVzYWdlOiBhc20oQUxURVJOQVRJVkUob2xk aW5zdHIsIG5ld2luc3RyLCBmZWF0dXJlKSk7Cj4gwqAqCj4gwqAqIFVzYWdlOiBhc20oQUxURVJO QVRJVkUob2xkaW5zdHIsIG5ld2luc3RyLCBmZWF0dXJlLCBDT05GSUdfRk9PKSk7Cj4gwqAqIE4u Qi4gSWYgQ09ORklHX0ZPTyBpcyBzcGVjaWZpZWQsIGJ1dCBub3Qgc2VsZWN0ZWQsIHRoZSB3aG9s ZSBibG9jawo+IMKgKsKgwqDCoMKgwqAgd2lsbCBiZSBvbWl0dGVkLCBpbmNsdWRpbmcgb2xkaW5z dHIuCj4gwqAqLwo+IAo+IElmIENPTkZJR19GT08gaXMgbm90IHNlbGVjdGVkLCB0aGUgd2hvbGUg YmxvY2sgd2lsbCBiZSBvbWl0dGVkIGluY2x1ZGluZwo+IG9sZGluc3RyLgo+IAo+IEJ1dCB3ZSBz dGlsbCB3YW50IHRoZSBvbGRpbnN0ciBpbiB0aGlzIHNpdHVhdGlvbi4gRG8gSSBtaXN1bmRlcnN0 YW5kCj4gc29tZXRoaW5nPwoKU29ycnk7IHlvdSBhcmUgcmlnaHQsIGFuZCBteSBzdWdnZXN0aW9u IHdhcyBicm9rZW4uCgpJJ2xsIG5lZWQgdG8gaGF2ZSBhIHRoaW5rIGFib3V0IHRoaXM7IHdlIG1p Z2h0IGJlIGFibGUgdG8gcmV3b3JrIHRoaXMgdG8gdXNlIGEKc3RhdGljIGtleSBpbnN0ZWFkLCBi dXQgSUlSQyBsYXN0IHRpbWUgSSB0cmllZCB0aGVyZSB3ZXJlIGlzc3VlcyB3aXRoIHRoYXQKYXBw cm9hY2guIEkgaGF2ZSBzb21lIChvbGQpIHdvcmstaW4tcHJvZ3Jlc3MgcGF0Y2hlcyBhdDoKCiAg aHR0cHM6Ly9naXQua2VybmVsLm9yZy9wdWIvc2NtL2xpbnV4L2tlcm5lbC9naXQvbWFyay9saW51 eC5naXQvbG9nLz9oPWFybTY0L2RhaWYtcmV3b3JrCgpJIHN1c3BlY3QgSSB3b24ndCBoYXZlIHRp bWUgdG8gcmVuZXcgdGhhdCBpbiB0aGUgbmVhciBmdXR1cmUsIGJ1dCBhbiBhcHByb2FjaApsaWtl IHRoYXQgbWlnaHQgYmUgd29ydGh3aGlsZS4KClRoYW5rcywKTWFyay4KCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGlu ZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMu aW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK