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=-6.8 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED 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 16AABC48BD6 for ; Wed, 26 Jun 2019 17:06:02 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id D4B1020665 for ; Wed, 26 Jun 2019 17:06:01 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="Dd4Vsi0/" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D4B1020665 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Date: Message-ID:From:References:To:Subject:Reply-To:Content-ID:Content-Description :Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=PVmfgurvRMrlom8beDhXPgkL01EeiLiV19iStxGPMmI=; b=Dd4Vsi0/Sy0jG3 SKdVzoylr3fDf4a1s0vK6hP5gtRHMRCFf0k7Xiy6sB0ECtY0kIPQ3M57KNQc8vp07O1apV2I4pp7I 107TMTDdsDOqIcamSM7XeYt7OsJQ+XNLY+4pZxVHsdD5kkrzcWrJXRJeTlFiyZF70QJhmY46brjGj I9RedRNiLFp9EOZpAjazTX+OYDs0h7Uhckhh5Gs6lMd2P+aZ3OZFMcZgfSXNez2KEJaGvSnjXQG+q b0nbH+J1naiW/Op1d1epqJHQosrxgsJjZ0X9xJbgcsM23H2Ml0Yn1Qg6E+CYKBvM0NO1A6XjhBdoN f+apQVXu6htz/ubnqYzg==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92 #3 (Red Hat Linux)) id 1hgBMt-000301-Bl; Wed, 26 Jun 2019 17:05:59 +0000 Received: from foss.arm.com ([217.140.110.172]) by bombadil.infradead.org with esmtp (Exim 4.92 #3 (Red Hat Linux)) id 1hgBMq-0002zJ-72 for linux-arm-kernel@lists.infradead.org; Wed, 26 Jun 2019 17:05:58 +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 F0A682B; Wed, 26 Jun 2019 10:05:53 -0700 (PDT) Received: from [192.168.3.111] (unknown [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 248973F706; Wed, 26 Jun 2019 10:05:52 -0700 (PDT) Subject: Re: [PATCH V2 2/2] mailbox: introduce ARM SMC based mailbox To: Peng Fan , Jassi Brar References: <20190603083005.4304-1-peng.fan@nxp.com> <20190603083005.4304-3-peng.fan@nxp.com> From: =?UTF-8?Q?Andr=c3=a9_Przywara?= Openpgp: preference=signencrypt Autocrypt: addr=andre.przywara@arm.com; prefer-encrypt=mutual; keydata= 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 i4aIXCH3Wv6K Organization: ARM Ltd. Message-ID: <20c6cd30-642d-5f6e-15b8-2ef925ed90a6@arm.com> Date: Wed, 26 Jun 2019 18:05:47 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.7.1 MIME-Version: 1.0 In-Reply-To: Content-Language: en-GB X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190626_100556_349072_67FE6481 X-CRM114-Status: GOOD ( 28.27 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mark Rutland , Devicetree List , Florian Fainelli , "festevam@gmail.com" , Linux Kernel Mailing List , Rob Herring , dl-linux-imx , ", Sascha Hauer" , Sudeep Holla , "van.freenix@gmail.com" , Shawn Guo , "linux-arm-kernel@lists.infradead.org" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gMjUvMDYvMjAxOSAwODoyMCwgUGVuZyBGYW4gd3JvdGU6Cj4gSGkgSmFzc2ksCj4gCj4+IC0t LS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tCj4+IEZyb206IEphc3NpIEJyYXIgW21haWx0bzpqYXNz aXNpbmdoYnJhckBnbWFpbC5jb21dCj4+IFNlbnQ6IDIwMTnlubQ25pyIMjHml6UgMDo1MAo+PiBU bzogUGVuZyBGYW4gPHBlbmcuZmFuQG54cC5jb20+Cj4+IENjOiBSb2IgSGVycmluZyA8cm9iaCtk dEBrZXJuZWwub3JnPjsgTWFyayBSdXRsYW5kCj4+IDxtYXJrLnJ1dGxhbmRAYXJtLmNvbT47IFN1 ZGVlcCBIb2xsYSA8c3VkZWVwLmhvbGxhQGFybS5jb20+OyBGbG9yaWFuCj4+IEZhaW5lbGxpIDxm LmZhaW5lbGxpQGdtYWlsLmNvbT47ICwgU2FzY2hhIEhhdWVyIDxrZXJuZWxAcGVuZ3V0cm9uaXgu ZGU+Owo+PiBkbC1saW51eC1pbXggPGxpbnV4LWlteEBueHAuY29tPjsgU2hhd24gR3VvIDxzaGF3 bmd1b0BrZXJuZWwub3JnPjsKPj4gZmVzdGV2YW1AZ21haWwuY29tOyBEZXZpY2V0cmVlIExpc3Qg PGRldmljZXRyZWVAdmdlci5rZXJuZWwub3JnPjsgTGludXgKPj4gS2VybmVsIE1haWxpbmcgTGlz dCA8bGludXgta2VybmVsQHZnZXIua2VybmVsLm9yZz47Cj4+IGxpbnV4LWFybS1rZXJuZWxAbGlz dHMuaW5mcmFkZWFkLm9yZzsgQW5kcmUgUHJ6eXdhcmEKPj4gPGFuZHJlLnByenl3YXJhQGFybS5j b20+OyB2YW4uZnJlZW5peEBnbWFpbC5jb20KPj4gU3ViamVjdDogUmU6IFtQQVRDSCBWMiAyLzJd IG1haWxib3g6IGludHJvZHVjZSBBUk0gU01DIGJhc2VkIG1haWxib3gKPj4KPj4gT24gTW9uLCBK dW4gMywgMjAxOSBhdCAzOjI4IEFNIDxwZW5nLmZhbkBueHAuY29tPiB3cm90ZToKPj4+Cj4+PiBG cm9tOiBQZW5nIEZhbiA8cGVuZy5mYW5AbnhwLmNvbT4KPj4+Cj4+PiBUaGlzIG1haWxib3ggZHJp dmVyIGltcGxlbWVudHMgYSBtYWlsYm94IHdoaWNoIHNpZ25hbHMgdHJhbnNtaXR0ZWQKPj4+IGRh dGEgdmlhIGFuIEFSTSBzbWMgKHNlY3VyZSBtb25pdG9yIGNhbGwpIGluc3RydWN0aW9uLiBUaGUg bWFpbGJveAo+Pj4gcmVjZWl2ZXIgaXMgaW1wbGVtZW50ZWQgaW4gZmlybXdhcmUgYW5kIGNhbiBz eW5jaHJvbm91c2x5IHJldHVybiBkYXRhCj4+PiB3aGVuIGl0IHJldHVybnMgZXhlY3V0aW9uIHRv IHRoZSBub24tc2VjdXJlIHdvcmxkIGFnYWluLgo+Pj4gQW4gYXN5bmNocm9ub3VzIHJlY2VpdmUg cGF0aCBpcyBub3QgaW1wbGVtZW50ZWQuCj4+PiBUaGlzIGFsbG93cyB0aGUgdXNhZ2Ugb2YgYSBt YWlsYm94IHRvIHRyaWdnZXIgZmlybXdhcmUgYWN0aW9ucyBvbiBTb0NzCj4+PiB3aGljaCBlaXRo ZXIgZG9uJ3QgaGF2ZSBhIHNlcGFyYXRlIG1hbmFnZW1lbnQgcHJvY2Vzc29yIG9yIG9uIHdoaWNo Cj4+PiBzdWNoIGEgY29yZSBpcyBub3QgYXZhaWxhYmxlLiBBIHVzZXIgb2YgdGhpcyBtYWlsYm94 IGNvdWxkIGJlIHRoZSBTQ1AKPj4+IGludGVyZmFjZS4KPj4+Cj4+PiBNb2RpZmllZCBmcm9tIEFu ZHJlIFByenl3YXJhJ3MgdjIgcGF0Y2gKPj4+IGh0dHBzOi8vZXVyMDEuc2FmZWxpbmtzLnByb3Rl Y3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRmxvcmUKPj4+IC5rZXJuZWwub3Jn JTJGcGF0Y2h3b3JrJTJGcGF0Y2glMkY4MTI5OTklMkYmYW1wO2RhdGE9MDIlN0MwMSU3Cj4+IENw ZW5nLmZhCj4+Pgo+PiBuJTQwbnhwLmNvbSU3QzEyMzc2NzdjYjAxMDQ0YWQ3MTQ1MDhkNmY1OWY2 NDhmJTdDNjg2ZWExZDNiYzJiNAo+PiBjNmZhOTJjZAo+Pj4KPj4gOTljNWMzMDE2MzUlN0MwJTdD MCU3QzYzNjk2NjQ2MjI3MjQ1Nzk3OCZhbXA7c2RhdGE9SHpnZXU0M201Cj4+IFprZVJNdEw4QngK Pj4+IGdVbTMlMkI2RkJPYmliMU9QSFBsU2NjRSUyQjAlM0QmYW1wO3Jlc2VydmVkPTAKPj4+Cj4+ PiBDYzogQW5kcmUgUHJ6eXdhcmEgPGFuZHJlLnByenl3YXJhQGFybS5jb20+Cj4+PiBTaWduZWQt b2ZmLWJ5OiBQZW5nIEZhbiA8cGVuZy5mYW5AbnhwLmNvbT4KPj4+IC0tLQo+Pj4KPj4+IFYyOgo+ Pj4gIEFkZCBpbnRlcnJ1cHRzIG5vdGlmaWNhdGlvbiBzdXBwb3J0Lgo+Pj4KPj4+ICBkcml2ZXJz L21haWxib3gvS2NvbmZpZyAgICAgICAgICAgICAgICAgfCAgIDcgKysKPj4+ICBkcml2ZXJzL21h aWxib3gvTWFrZWZpbGUgICAgICAgICAgICAgICAgfCAgIDIgKwo+Pj4gIGRyaXZlcnMvbWFpbGJv eC9hcm0tc21jLW1haWxib3guYyAgICAgICB8IDE5MAo+PiArKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKwo+Pj4gIGluY2x1ZGUvbGludXgvbWFpbGJveC9hcm0tc21jLW1haWxib3guaCB8 ICAxMCArKwo+Pj4gIDQgZmlsZXMgY2hhbmdlZCwgMjA5IGluc2VydGlvbnMoKykKPj4+ICBjcmVh dGUgbW9kZSAxMDA2NDQgZHJpdmVycy9tYWlsYm94L2FybS1zbWMtbWFpbGJveC5jICBjcmVhdGUg bW9kZQo+Pj4gMTAwNjQ0IGluY2x1ZGUvbGludXgvbWFpbGJveC9hcm0tc21jLW1haWxib3guaAo+ Pj4KPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21haWxib3gvS2NvbmZpZyBiL2RyaXZlcnMvbWFp bGJveC9LY29uZmlnIGluZGV4Cj4+PiA1OTU1NDJiZmFlODUuLmMzYmQwZjFkZGNkOCAxMDA2NDQK Pj4+IC0tLSBhL2RyaXZlcnMvbWFpbGJveC9LY29uZmlnCj4+PiArKysgYi9kcml2ZXJzL21haWxi b3gvS2NvbmZpZwo+Pj4gQEAgLTE1LDYgKzE1LDEzIEBAIGNvbmZpZyBBUk1fTUhVCj4+PiAgICAg ICAgICAgVGhlIGNvbnRyb2xsZXIgaGFzIDMgbWFpbGJveCBjaGFubmVscywgdGhlIGxhc3Qgb2Yg d2hpY2ggY2FuIGJlCj4+PiAgICAgICAgICAgdXNlZCBpbiBTZWN1cmUgbW9kZSBvbmx5Lgo+Pj4K Pj4+ICtjb25maWcgQVJNX1NNQ19NQk9YCj4+PiArICAgICAgIHRyaXN0YXRlICJHZW5lcmljIEFS TSBzbWMgbWFpbGJveCIKPj4+ICsgICAgICAgZGVwZW5kcyBvbiBPRiAmJiBIQVZFX0FSTV9TTUND Qwo+Pj4gKyAgICAgICBoZWxwCj4+PiArICAgICAgICAgR2VuZXJpYyBtYWlsYm94IGRyaXZlciB3 aGljaCB1c2VzIEFSTSBzbWMgY2FsbHMgdG8gY2FsbCBpbnRvCj4+PiArICAgICAgICAgZmlybXdh cmUgZm9yIHRyaWdnZXJpbmcgbWFpbGJveGVzLgo+Pj4gKwo+Pj4gIGNvbmZpZyBJTVhfTUJPWAo+ Pj4gICAgICAgICB0cmlzdGF0ZSAiaS5NWCBNYWlsYm94Igo+Pj4gICAgICAgICBkZXBlbmRzIG9u IEFSQ0hfTVhDIHx8IENPTVBJTEVfVEVTVCBkaWZmIC0tZ2l0Cj4+PiBhL2RyaXZlcnMvbWFpbGJv eC9NYWtlZmlsZSBiL2RyaXZlcnMvbWFpbGJveC9NYWtlZmlsZSBpbmRleAo+Pj4gYzIyZmFkNmY2 OTZiLi45MzkxOGE4NGM5MWIgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL21haWxib3gvTWFrZWZp bGUKPj4+ICsrKyBiL2RyaXZlcnMvbWFpbGJveC9NYWtlZmlsZQo+Pj4gQEAgLTcsNiArNyw4IEBA IG9iai0kKENPTkZJR19NQUlMQk9YX1RFU1QpICAgICAgKz0gbWFpbGJveC10ZXN0Lm8KPj4+Cj4+ PiAgb2JqLSQoQ09ORklHX0FSTV9NSFUpICArPSBhcm1fbWh1Lm8KPj4+Cj4+PiArb2JqLSQoQ09O RklHX0FSTV9TTUNfTUJPWCkgICAgICs9IGFybS1zbWMtbWFpbGJveC5vCj4+PiArCj4+PiAgb2Jq LSQoQ09ORklHX0lNWF9NQk9YKSArPSBpbXgtbWFpbGJveC5vCj4+Pgo+Pj4gIG9iai0kKENPTkZJ R19BUk1BREFfMzdYWF9SV1RNX01CT1gpICAgICs9Cj4+IGFybWFkYS0zN3h4LXJ3dG0tbWFpbGJv eC5vCj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tYWlsYm94L2FybS1zbWMtbWFpbGJveC5jCj4+ PiBiL2RyaXZlcnMvbWFpbGJveC9hcm0tc21jLW1haWxib3guYwo+Pj4gbmV3IGZpbGUgbW9kZSAx MDA2NDQKPj4+IGluZGV4IDAwMDAwMDAwMDAwMC4uZmVmNmUzOGQ4Yjk4Cj4+PiAtLS0gL2Rldi9u dWxsCj4+PiArKysgYi9kcml2ZXJzL21haWxib3gvYXJtLXNtYy1tYWlsYm94LmMKPj4+IEBAIC0w LDAgKzEsMTkwIEBACj4+PiArLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAKPj4+ ICsvKgo+Pj4gKyAqIENvcHlyaWdodCAoQykgMjAxNiwyMDE3IEFSTSBMdGQuCj4+PiArICogQ29w eXJpZ2h0IDIwMTkgTlhQCj4+PiArICovCj4+PiArCj4+PiArI2luY2x1ZGUgPGxpbnV4L2FybS1z bWNjYy5oPgo+Pj4gKyNpbmNsdWRlIDxsaW51eC9kZXZpY2UuaD4KPj4+ICsjaW5jbHVkZSA8bGlu dXgva2VybmVsLmg+Cj4+PiArI2luY2x1ZGUgPGxpbnV4L2ludGVycnVwdC5oPgo+Pj4gKyNpbmNs dWRlIDxsaW51eC9tYWlsYm94X2NvbnRyb2xsZXIuaD4gI2luY2x1ZGUKPj4+ICs8bGludXgvbWFp bGJveC9hcm0tc21jLW1haWxib3guaD4KPj4+ICsjaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+Cj4+ PiArI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RldmljZS5oPgo+Pj4gKwo+Pj4gKyNkZWZpbmUg QVJNX1NNQ19NQk9YX1VTRV9IVkMgICBCSVQoMCkKPj4+ICsjZGVmaW5lIEFSTV9TTUNfTUJPWF9V U0JfSVJRICAgQklUKDEpCj4+PiArCj4+IElSUSBiaXQgaXMgdW51c2VkIChhbmQgdW5uZWNlc3Nh cnkgSU1PKQo+IAo+IFRoaXMgd2lsbCBiZSByZW1vdmVkIGluIG5leHQgdmVyc2lvbi4KPiAKPj4K Pj4+ICtzdHJ1Y3QgYXJtX3NtY19jaGFuX2RhdGEgewo+Pj4gKyAgICAgICB1MzIgZnVuY3Rpb25f aWQ7Cj4+PiArICAgICAgIHUzMiBmbGFnczsKPj4+ICsgICAgICAgaW50IGlycTsKPj4+ICt9Owo+ Pj4gKwo+Pj4gK3N0YXRpYyBpbnQgYXJtX3NtY19zZW5kX2RhdGEoc3RydWN0IG1ib3hfY2hhbiAq bGluaywgdm9pZCAqZGF0YSkgewo+Pj4gKyAgICAgICBzdHJ1Y3QgYXJtX3NtY19jaGFuX2RhdGEg KmNoYW5fZGF0YSA9IGxpbmstPmNvbl9wcml2Owo+Pj4gKyAgICAgICBzdHJ1Y3QgYXJtX3NtY2Nj X21ib3hfY21kICpjbWQgPSBkYXRhOwo+Pj4gKyAgICAgICBzdHJ1Y3QgYXJtX3NtY2NjX3JlcyBy ZXM7Cj4+PiArICAgICAgIHUzMiBmdW5jdGlvbl9pZDsKPj4+ICsKPj4+ICsgICAgICAgaWYgKGNo YW5fZGF0YS0+ZnVuY3Rpb25faWQgIT0gVUlOVF9NQVgpCj4+PiArICAgICAgICAgICAgICAgZnVu Y3Rpb25faWQgPSBjaGFuX2RhdGEtPmZ1bmN0aW9uX2lkOwo+Pj4gKyAgICAgICBlbHNlCj4+PiAr ICAgICAgICAgICAgICAgZnVuY3Rpb25faWQgPSBjbWQtPmEwOwo+Pj4gKwo+PiBOb3Qgc3VyZSBh Ym91dCBjaGFuX2RhdGEtPmZ1bmN0aW9uX2lkLiAgV2h5IHJlc3RyaWN0IGZyb20gRFQ/Cj4+ICdh MCcgaXMgdGhlIGZ1bmN0aW9uX2lkIHJlZ2lzdGVyLCBsZXQgdGhlIHVzZXIgcGFzcyBmdW5jLWlk IHZpYSB0aGUgJ2EwJyBsaWtlIG90aGVyCj4+IHZhbHVlcyB2aWEgJ2FbMS03XScKPj4KPj4KPj4+ ICsgICAgICAgaWYgKGNoYW5fZGF0YS0+ZmxhZ3MgJiBBUk1fU01DX01CT1hfVVNFX0hWQykKPj4+ ICsgICAgICAgICAgICAgICBhcm1fc21jY2NfaHZjKGZ1bmN0aW9uX2lkLCBjbWQtPmExLCBjbWQt PmEyLAo+PiBjbWQtPmEzLCBjbWQtPmE0LAo+Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY21kLT5hNSwgY21kLT5hNiwgY21kLT5hNywgJnJlcyk7Cj4+PiArICAgICAgIGVsc2UKPj4+ ICsgICAgICAgICAgICAgICBhcm1fc21jY2Nfc21jKGZ1bmN0aW9uX2lkLCBjbWQtPmExLCBjbWQt PmEyLAo+PiBjbWQtPmEzLCBjbWQtPmE0LAo+Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY21kLT5hNSwgY21kLT5hNiwgY21kLT5hNywgJnJlcyk7Cj4+PiArCj4+PiArICAgICAgIGlm IChjaGFuX2RhdGEtPmlycSkKPj4+ICsgICAgICAgICAgICAgICByZXR1cm4gMDsKPj4+ICsKPj4g VGhpcyBpcnEgdGhpbmcgc2VlbXMgbGlrZSBvb2Igc2lnbmFsbGluZywgdGhhdCBpcywgYSBwcm90 b2NvbCB0aGluZy4KPj4gQW5kIHRoZW4gaXQgcHJvdmlkZXMgbGVzc2VyIGluZm8gdmlhIGNoYW5f aXJxX2hhbmRsZXIgKHJldHVybnMgTlVMTCkgdGhhbgo+PiByZXMuYTAgLSB3aGljaCBjYW4gYWx3 YXlzIGJlIGlnbm9yZWQgaWYgbm90IG5lZWRlZC4KPj4gU28gdGhlIGlycSBzaG91bGQgYmUgaW1w bGVtZW50ZWQgaW4gdGhlIHVwcGVyIGxheWVyIGlmIHRoZSBwcm90b2NvbCBuZWVkcyBpdC4KPiAK PiBUaGUgaW50ZXJydXB0cyB3YXMgYWRkZWQgaGVyZSBiZWNhdXNlIGluIHYxLCBGbG9yaWFuIHN1 Z2dlc3QKPiAiCj4gSSB3b3VsZCBqdXN0IHB1dCBhCj4gcHJvdmlzaW9uIGluIHRoZSBiaW5kaW5n IHRvIHN1cHBvcnQgYW4gb3B0aW9uYWwgaW50ZXJydXB0IHN1Y2ggdGhhdAo+IGFzeW5jaHJvbmlz bSBnZXRzIHJlYXNvbmFibHkgZWFzeSB0byBwbHVnIGluIHdoZW4gaXQgaXMgYXZhaWxhYmxlIChh bmQKPiBkZXNpcmFibGUpLgo+ICIKPiAKPiBTbyBJIGludHJvZHVjZWQgaW50ZXJydXB0IGluIFYy LiBJbiBteSB0ZXN0Y2FzZSwgYWZ0ZXIgc21jIGNhbGwgZG9uZSwKPiBpdCBtZWFucyBmaXJtd2Fy ZS0+c21jIG1haWxib3gtPmZpcm13YXJlIGRvbmUuIEludGVycnVwdCBub3RpZmljYXRpb24KPiBm cm9tIGZpcm13YXJlLT5MaW51eCwgbWVhbnMgZmlybXdhcmUgaGFzIGRvbmUgdGhlIG9wZXJhdGlv bi4KPiAKPiBXaGVuIHVzaW5nIGludGVycnVwdHMsIHdlIGNvdWxkIG5vdCBrbm93IHJlcy5hMCBh cyBzbWMgc3luYyBjYWxsLgo+IAo+IEludGVycnVwdHMgaXMgbm90IGEgbXVzdCBpbiBteSB0ZXN0 Y2FzZSwgRmxvcmlhbiwgQW5kcmUsIGRvIHlvdSBoYXZlCj4gYW55IGNvbW1lbnRzPyBTaG91bGQg SSBrZWVwIGludGVycnVwdHMgaW4gVjMgb3IgZHJvcCBpdCBhcyBKYXNzaSBjb21tZW50cz8KClRo ZSBzbWMgbWFpbGJveCBpcyBieSBpdHMgdmVyeSBkZXNpZ24gYSBvbmUtd2F5IGNoYW5uZWwgLSBh bmQgaXQncwpzeW5jaHJvbm91cy4gSSB0aGluayB0aGlzIGlzIGFsbCB0aGUgbWFpbGJveCBkcml2 ZXIgc2hvdWxkIGJlIGNvbmNlcm5lZAphYm91dC4gVGhlIGZhY3QgdGhhdCB0aGVyZSBpcyBhIHBy b3RvY29sIHVzZXIgdGhhdCB3b3VsZCBiZW5lZml0IGZyb20gYQpyZXR1cm4gY2hhbm5lbCBpcyBh IHNlcGFyYXRlIGlzc3VlLgpUaGUgU0NNSSBiaW5kaW5nIGV4cGxpY2l0bHkgbWVudGlvbnMgKnR3 byogbWFpbGJveGVzLCBvbmUgVFgsIG9uZSBSWCwgc28KdGhlIHJldHVybiBjaGFubmVsIGNvdWxk IGJlIHZlcnkgd2VsbCBpbXBsZW1lbnRlZCBieSBhIHNlcGFyYXRlIGRyaXZlci4KSSBhbSB3b25k ZXJpbmcgaWYgd2UgZ2V0IGF3YXkgd2l0aG91dCBhIGZ1bmN0aW9uaW5nIHJldHVybiBjaGFubmVs LCBhdApsZWFzdCBmb3IgYSBzdWJzZXQgb2YgU0NNSSBmdW5jdGlvbmFsaXR5PyBDYW4gd2UgdXNl IHNvbWUgZHVtbXkgZHJpdmVyPwpPciBzcGVjaWZ5IGFub3RoZXIgc21jIGNoYW5uZWwgd2l0aCBz b21lIHVuaGFuZGxlZC9pZ25vcmVkIGNoYW5uZWwgSUQKZm9yIHRoYXQgcHVycG9zZT8KClNvIEkg d291bGQgbGVhdmUgdGhlIElSUSByZXR1cm4gY2hhbm5lbCBvdXQgZm9yIG5vdywgdW5sZXNzIHdl CmRlc3BlcmF0ZWx5IG5lZWQgaXQuCgpDaGVlcnMsCkFuZHJlLgoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxp c3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZy YWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=