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 4E164EB8FDE for ; Thu, 7 Sep 2023 12:14:29 +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:MIME-Version:References:In-Reply-To: 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=p+Fv4fWe78QgGEpuwtMnn+wywDq4agoy26gm9twBOYE=; b=Ryc14WIrnsTAPD sS+Z10+OXE4rKrcuCKjNmKoYJfUEgr7WoOi/rYKkADbD5Bu3GbymoD+wejrQUJ3nhwudpaLEjemvV syIQX6ZY6YYD6ZxXO87TZwNH6Egu6r82cD6ZBhHZp515JrTRnJoybW2L4Pm0ovit7dlz6VASpqhsd XzQMOZJxWEpxeTRT2dyWzepxh5HjMaIAVT6Bi6KvTFuSn1hWiD5EIqNuQ/hlZ4DwwmMf91nlkVjRC T8oLvv8Ck9Q19mbwvv0ApGyV7cWlFyc76B03NZRrsTWAxCIZ+zoBVVFtmR2u7R4EtRBpCtGCfWZDK WeNIX0mU4V7c70FoQ6oA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qeDtb-00C4GG-0I; Thu, 07 Sep 2023 12:14:03 +0000 Received: from sin.source.kernel.org ([2604:1380:40e1:4800::1]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qeDtX-00C4Fk-1a; Thu, 07 Sep 2023 12:14:01 +0000 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by sin.source.kernel.org (Postfix) with ESMTPS id A6789CE1924; Thu, 7 Sep 2023 12:13:56 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C42ABC32783; Thu, 7 Sep 2023 12:13:53 +0000 (UTC) Date: Thu, 7 Sep 2023 08:14:08 -0400 From: Steven Rostedt To: "Tze-nan Wu (=?UTF-8?B?5ZCz5r6k5Y2X?=)" Cc: "linux-kernel@vger.kernel.org" , "linux-trace-kernel@vger.kernel.org" , "linux-mediatek@lists.infradead.org" , "Cheng-Jui Wang (=?UTF-8?B?546L5q2j552/?=)" , wsd_upstream , "Bobule Chang (=?UTF-8?B?5by1?= =?UTF-8?B?5byY576p?=)" , "linux-arm-kernel@lists.infradead.org" , "mhiramat@kernel.org" , "angelogioacchino.delregno@collabora.com" Subject: Re: [PATCH] ring-buffer: Do not read at &event->array[0] if it across the page Message-ID: <20230907081408.6156b6f0@gandalf.local.home> In-Reply-To: <0944a5f3e10c0eba8b32e51fb941e0dd98ec086d.camel@mediatek.com> References: <20230905141245.26470-1-Tze-nan.Wu@mediatek.com> <20230905123953.3c0b3d7a@gandalf.local.home> <3a89d49ae0da6378de83bc68690cf6664d97cb24.camel@mediatek.com> <0944a5f3e10c0eba8b32e51fb941e0dd98ec086d.camel@mediatek.com> X-Mailer: Claws Mail 3.19.1 (GTK+ 2.24.33; x86_64-pc-linux-gnu) MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230907_051359_888454_507ADF8A X-CRM114-Status: GOOD ( 48.28 ) 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 T24gVGh1LCA3IFNlcCAyMDIzIDEwOjEwOjU3ICswMDAwClR6ZS1uYW4gV3UgKOWQs+a+pOWNlykg PFR6ZS1uYW4uV3VAbWVkaWF0ZWsuY29tPiB3cm90ZToKCj4gPiBTYW1lIGFzIG15IHRob3VnaHQs Cj4gPiBzaW5jZSBldmVyeSB0aW1lIHRoZSByZWFkZXIgdHJ5IHRvIGFjY2VzcyB0aGUgYWRkcmVz cyBpbiBuZXh0IHBhZ2UsCj4gPiB0aGUgYmVsb3cgY29uZGl0aW9uIGhvbGQgaW4gcmJfaXRlcl9o ZWFkX2V2ZW50IGZ1bmN0aW9uOgo+ID4gCj4gPiAgICAgICAgIGlmIChpdGVyLT5wYWdlX3N0YW1w ICE9IGl0ZXJfaGVhZF9wYWdlLT5wYWdlLT50aW1lX3N0YW1wIHx8Cj4gPiAgICAgICAgICAgICAg ICAgY29tbWl0ID4gcmJfcGFnZV9jb21taXQoaXRlcl9oZWFkX3BhZ2UpKQo+ID4gICAgICAgICAg ICAgICAgICAgICAgICAgZ290byByZXNldDsKPiA+IAo+ID4gSSBvYnNlcnZlIHRoZSByZXN1bHQg YnkgdGhlIGRlYnVnIHBhdGNoIHByb3ZpZGVkIGJlbG93Ogo+ID4gCj4gPiAgICAgICAgIEBAIC0y Mzc4LDYgKzIzNzgsMTkgQEAgcmJfaXRlcl9oZWFkX2V2ZW50KHN0cnVjdAo+ID4gcmluZ19idWZm ZXJfaXRlciAqaXRlcikKPiA+ICAgICAgICAgICAgICAgICBjb21taXQgPSByYl9wYWdlX2NvbW1p dChpdGVyX2hlYWRfcGFnZSk7Cj4gPiAgICAgICAgICAgICAgICAgc21wX3JtYigpOwo+ID4gICAg ICAgICArICAgICAgIGlmICgoaXRlci0+aGVhZCA+PSAweEZFQ1VMKSAmJiBjb21taXQgPT0gMHhG RjBVTCkgewo+ID4gICAgICAgICArICAgICAgICAgICAgICAgcHJfaW5mbygicmJkYmc6IGNwdSA9 ICVkLCBldmVudCA9IDB4JWx4LAo+ID4gaXRlci0gIAo+ID4gPiBoZWFkID0gMHglbHgsXCAgCj4g PiAKPiA+ICAgICAgICAgKyAgICAgICAgICAgICAgICAgICAgICAgY29tbWl0ID0gMHhGRjAsIHR5 cGUgPSAweCV4LCB0cyA9Cj4gPiAweCV4LAo+ID4gYXJyYXkgYWRkciA9IDB4JWx4XG4iLFwKPiA+ ICAgICAgICAgKyAgICAgICAgICAgICAgICAgICAgICAgaXRlci0+Y3B1X2J1ZmZlci0+Y3B1LCAo dW5zaWduZWQKPiA+IGxvbmcpZXZlbnQsIGl0ZXItPmhlYWQsXAo+ID4gICAgICAgICArICAgICAg ICAgICAgICAgICAgICAgICBldmVudC0+dHlwZV9sZW4sIGV2ZW50LT50aW1lX2RlbHRhLAo+ID4g KHVuc2lnbmVkIGxvbmcpKCYoZXZlbnQtPmFycmF5WzBdKSkpOwo+ID4gICAgICAgICArICAgICAg ICAgICAgICAgbWRlbGF5KDUwMCk7Cj4gPiAgICAgICAgICsgICAgICAgICAgICAgICBwcl9pbmZv KCJyYmRiZzI6IGNwdSA9ICVkLCBldmVudCA9IDB4JWx4LAo+ID4gaXRlci0gIAo+ID4gPiBoZWFk ID0gMHglbHgsXCAgCj4gPiAKPiA+ICAgICAgICAgKyAgICAgICAgICAgICAgICAgICAgICAgY29t bWl0ID0gMHhGRjAsIHR5cGUgPSAweCV4LCB0cyA9Cj4gPiAweCV4LAo+ID4gYXJyYXkgYWRkciA9 IDB4JWx4XG4iLFwKPiA+ICAgICAgICAgKyAgICAgICAgICAgICAgICAgICAgICAgaXRlci0+Y3B1 X2J1ZmZlci0+Y3B1LCAodW5zaWduZWQKPiA+IGxvbmcpZXZlbnQsIGl0ZXItPmhlYWQsXAo+ID4g ICAgICAgICArICAgICAgICAgICAgICAgICAgICAgICBldmVudC0+dHlwZV9sZW4sIGV2ZW50LT50 aW1lX2RlbHRhLAo+ID4gKHVuc2lnbmVkIGxvbmcpKCYoZXZlbnQtPmFycmF5WzBdKSkpOwo+ID4g ICAgICAgICArICAgICAgICAgICAgICAgaWYgKGl0ZXItPnBhZ2Vfc3RhbXAgIT0gaXRlcl9oZWFk X3BhZ2UtPnBhZ2UtICAKPiA+ID4gdGltZV9zdGFtcCB8fCBjb21taXQgPiByYl9wYWdlX2NvbW1p dChpdGVyX2hlYWRfcGFnZSkpICAKPiA+IAo+ID4gICAgICAgICArICAgICAgICAgICAgICAgICAg ICAgICBwcl9pbmZvKCJyYmRiZzogd3JpdGVyIGNvcnJ1cHQKPiA+IHJlYWRlclxuIik7Cj4gPiAg ICAgICAgICsgICAgICAgfQo+ID4gICAgICAgICAgICAgICAgIGV2ZW50ID0gX19yYl9wYWdlX2lu ZGV4KGl0ZXJfaGVhZF9wYWdlLCBpdGVyLT5oZWFkKTsKPiA+ICAgICAgICAgICAgICAgICBsZW5n dGggPSByYl9ldmVudF9sZW5ndGgoZXZlbnQpOwo+ID4gCj4gPiBOb3RlIHRoYXQgdGhlIG1kZWxh eSg1MDApIGluIHRoZSBkZWJ1ZyBwYXRjaCBjYW4gcmVwcm9kdWNlIHRoZSBpc3N1ZQo+ID4gZWFz aWVyIHdpdGggc2FtZSB0ZXN0IGluIG15IGVudmlyb25tbmV0LAo+ID4gSSBhbSBub3cgYWJsZSB0 byByZXByb2R1Y2UgdGhlIGlzc3VlIHdpdGhpbiAxNSBtaW51dGVzIGlmIHRoZSBkZWJ1Zwo+ID4g cGF0Y2ggb24uCj4gPiAgIAo+IAo+IFRoZSBkZWJ1ZyBwYXRjaCBtYXkgZ2l2ZSBzb21ldGhpbmcg c2ltaWxhciB0byB0aGUgYmVsb3cgbG9nIGp1c3QgYmVmb3JlCj4gdGhlIGludmFsaWQgYWNjZXNz IGhhcHBlbmVkLCBmb3IgbWUgaXQgbG9va3MgbGlrZSB0aGUgcGFkZGluZyBldmVudCBoYWQKPiBq dXN0IGNvcnJ1cHRlZCBieSB0aGUgd3JpdGVyIGJlZm9yZSB0aGUgcmVhZGVyIGludm9rZSByYl9l dmVudF9sZW5ndGgKPiBmdW5jdGlvbiBvbiBpdC4KPiAKPiBbICAzMzguMTU2NzcyXSBjYXQ6IFtu YW1lOnJpbmdfYnVmZmVyJl1yYmRiZzogY3B1ID0gMCwgZXZlbnQgPQo+IDB4Pz8/Pz8/Pz8/Pz8/ ZGZmYywgaXRlci0+aGVhZCA9IDB4ZmVjLCBjb21taXQgPSAweEZGMCwgdHlwZSA9IDB4MWQsIHRz Cj4gPSAweDAsIGFycmF5IGFkZHIgPSAweD8/Pz8/Pz8/Pz8/P2UwMDAKPiBbICAzMzguNjU2Nzk2 XSBjYXQ6IFtuYW1lOnJpbmdfYnVmZmVyJl1yYmRiZzI6IGNwdSA9IDAsIGV2ZW50ID0KPiAweD8/ Pz8/Pz8/Pz8/P2RmZmMsIGl0ZXItPmhlYWQgPSAweGZlYywgY29tbWl0ID0gMHhGRjAsIHR5cGUg PSAweDAsIHRzCj4gPSAweDAsIGFycmF5IGFkZHIgPSAweD8/Pz8/Pz8/Pz8/P2UwMDAKPiBbICAz MzguNjU2ODAzXSBjYXQ6IFtuYW1lOnJpbmdfYnVmZmVyJl1yYmRiZzogd3JpdGVyIGNvcnJ1cHQg cmVhZGVyCj4gWyAgMzM4LjY1NjgxMF0gY2F0Ogo+IFtuYW1lOnJlcG9ydCZdPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cj4gPT09PT09PT09 Cj4gWyAgMzM4LjY1NjgxOV0gY2F0OiBbbmFtZTpyZXBvcnQmXUJVRzogS0FTQU46IGludmFsaWQt YWNjZXNzIGluCj4gcmJfZXZlbnRfbGVuZ3RoCj4gCj4gCj4gPiA+ID4gU2luY2UgdGhlIGNvbnRl bnQgZGF0YSBzdGFydCBhdCBhZGRyZXNzIDB4NzFGRkZGODExMUExN0ZGQyBhcmUgIAo+ID4gPiAK PiA+ID4gMHhGRkZGRkZDMC4gIAo+ID4gPiA+IGV2ZW50LT50eXBlIHdpbGwgYmUgaW50ZXJwcmV0 IGFzIDB4MCwgdGhhbiB0aGUgcmVhZGVyIHdpbGwgdHJ5IHRvICAKPiA+ID4gCj4gPiA+IGdldCB0 aGUgIAo+ID4gPiA+IGxlbmd0aCBieSBhY2Nlc3NpbmcgZXZlbnQtPmFycmF5WzBdLCB3aGljaCBp cyBhbiBpbnZhbGlkIGFkZHJlc3M6Cj4gPiA+ID4gICAgICZldmVudC0+YXJyYXlbMF0gPSAweDcx RkZGRjgxMTFBMTgwMDAKPiA+ID4gPiAKPiA+ID4gPiBTaWduZWQtb2ZmLWJ5OiBUemUtbmFuIFd1 IDxUemUtbmFuLld1QG1lZGlhdGVrLmNvbT4KPiA+ID4gPiAtLS0KPiA+ID4gPiBGb2xsb3dpbmcg cGF0Y2ggbWF5IG5vdCBiZWNvbWUgYSBzb2x1dGlvbiwgaXQgbWVyZWx5IGNoZWNrcyBpZgo+ID4g PiA+IHRoZSAgCj4gPiA+IAo+ID4gPiBhZGRyZXNzICAKPiA+ID4gPiB0byBiZSBhY2Nlc3NlZCBp cyB2YWxpZCBvciBub3Qgd2l0aGluIHRoZSByYl9ldmVudF9sZW5ndGggYmVmb3JlICAKPiA+ID4g Cj4gPiA+IGFjY2Vzcy4gIAo+ID4gPiA+IEFuZCBub3Qgc3VyZSBpZiB0aGVyZSBpcyBhbnkgc2lk ZS1lZmZlY3QgaXQgY2FuIGxlYWQgdG8uCj4gPiA+ID4gCj4gPiA+ID4gSSBhbSBjdXJpb3VzIGFi b3V0IHdoYXQgYSBiZXR0ZXIgc29sdXRpb24gZm9yIHRoaXMgaXNzdWUgd291bGQKPiA+ID4gPiBs b29rICAKPiA+ID4gCj4gPiA+IGxpa2UuICAKPiA+ID4gPiBTaG91bGQgd2UgYWRkcmVzcyB0aGUg cHJvYmxlbSBmcm9tIHRoZSB3cml0ZXIgb3IgdGhlIHJlYWRlcj8KPiA+ID4gPiAKPiA+ID4gPiBB bHNvIEkgd29uZGVyIGlmIHRoZSBjYXVzZSBvZiB0aGUgaXNzdWUgaXMgZXhhY3RseSBhcyBJCj4g PiA+ID4gc3VzcGVjdGVkLgo+ID4gPiA+IEFueSBTdWdnZXN0aW9uIHdpbGwgYmUgYXBwcmVjaWF0 ZWQuICAKPiA+ID4gCj4gPiA+IEkgZ3Vlc3MgdGhpcyBkZXBlbmRzIG9uIGlmIHlvdSBoYXZlIHRo ZSBmaXhlcyBvciBub3Q/Cj4gPiA+ICAgCj4gPiAKPiA+IHllcywgSSBjb3VsZCB0cnkgdG8gcGlj ayB0aGUgcGF0Y2hlcyB0aGF0IG9ubHkgaW5jbHVkZWQgaW4gbWFpbmxpbmUKPiA+IGJ1dAo+ID4g bm90IGluIGtlcm5lbC02LjEuNTIgZm9yIHJpbmdfYnVmZmVyLmMgZmlsZSwKPiA+IGFuZCBkbyB0 aGUgc2FtZSB0ZXN0IHRvIHNlZSBpZiB0aGUgaXNzdWUgaXMgc3RpbGwgcmVwcm9kdWNpYmxlLgo+ ID4gICAKPiA+ID4gPiAKPiA+ID4gPiBUZXN0IGJlbG93IGNhbiByZXByb2R1Y2UgdGhlIGlzc3Vl IGluIDIgaG91cnMgb24ga2VybmVsLTYuMS4yNDoKPiA+ID4gPiAgICAgJGNkIC9zeXMva2VybmVs L3RyYWNpbmcvCj4gPiA+ID4gICAgICMgbWFrZSB0aGUgcmVhZGVyIGFuZCB3cml0ZXIgcmFjZSBt b3JlIHRocm91Z2ggcmVzaXplIHRoZSAgCj4gPiA+IAo+ID4gPiBidWZmZXIgdG8gOGtiICAKPiA+ ID4gPiAgICAgJGVjaG8gOCA+IGJ1ZmZlcl9zaXplX2tuCj4gPiA+ID4gICAgICMgZW5hYmxlIGFs bCBldmVudHMKPiA+ID4gPiAgICAgJGVjaG8gMSA+IGV2ZW50L2VuYWJsZQo+ID4gPiA+ICAgICAj IGVuYWJsZSB0cmFjZQo+ID4gPiA+ICAgICAkZWNobyAxID4gdHJhY2luZ19vbgo+ID4gPiA+ICAK PiA+ID4gPiAgICAgIyB3cml0ZSBhbmQgcnVuIGEgc2NyaXB0IHRoYXQga2VlcCByZWFkaW5nIHRy YWNlCj4gPiA+ID4gICAgICQuL3JlYWRfdHJhY2Uuc2gKPiA+ID4gPiAKPiA+ID4gPiAgICAgYGBg IHJlYWRfdHJhY2Uuc2gKPiA+ID4gPiAgICAgICAgd2hpbGUgOgo+ID4gPiA+ICAgICAgICBkbwo+ ID4gPiA+ICAgICAgICAgICAgY2F0IC9zeXMva2VybmVsL3RyYWNpbmcvdHJhY2UgPiAvZGV2L251 bGwKPiA+ID4gPiAgICAgICAgZG9uZQo+ID4gPiA+IAo+ID4gPiA+ICAgICBgYGAgIAo+ID4gPiAK PiA+ID4gVGhhbmtzLCBJJ2xsIGxvb2sgYXQgdGhhdCB3aGVuIEkgZmluaXNoIGRlYnVnZ2luZyB0 aGUgZXZlbnRmcyBidWcuCj4gPiA+IAo+ID4gPiAtLSBTdGV2ZSAgCj4gPiAKPiA+IEFsc28gdGhh bmsgZm9yIHlvdXIgcmVwbHksCj4gPiAgIAo+IAo+IEFuZCB0aGUgdGVtcG9yYXJ5IGZpeCBwYXRj aCBpbiBteSBmaXJzdCBtYWlsIHNob3VsZCBoYXZlIHNvbWUgbW9kaWZpZWQKPiBhcyBzaG93biBi ZWxvdy4KPiArICAgICAgICAgICAgICAgaWYgKCgodW5zaWduZWQgbG9uZylldmVudCAmIDB4ZmZm VUwpID49IFBBR0VfU0laRSAtIDQpCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXl5eXl5eCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBQQUdFX1NJWkUtMQo+ICsgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAtMTsK CgpZb3VyIGVtYWlsIGlzIGdldHRpbmcgcmVhbGx5IGhhcmQgdG8gcmVhZCBkdWUgdG8gdGhlIGxp bmUgd3JhcCBmb3JtYXR0aW5nLgoKQW55d2F5LCBjYW4geW91IHRyeSB0aGlzIHBhdGNoPwoKLS0g U3RldmUKCmRpZmYgLS1naXQgYS9rZXJuZWwvdHJhY2UvcmluZ19idWZmZXIuYyBiL2tlcm5lbC90 cmFjZS9yaW5nX2J1ZmZlci5jCmluZGV4IDcyY2NmNzVkZWZkMC4uNWIwNjUzMzc4MDg5IDEwMDY0 NAotLS0gYS9rZXJuZWwvdHJhY2UvcmluZ19idWZmZXIuYworKysgYi9rZXJuZWwvdHJhY2Uvcmlu Z19idWZmZXIuYwpAQCAtMjM5MCw2ICsyMzkwLDEwIEBAIHJiX2l0ZXJfaGVhZF9ldmVudChzdHJ1 Y3QgcmluZ19idWZmZXJfaXRlciAqaXRlcikKIAkgKi8KIAljb21taXQgPSByYl9wYWdlX2NvbW1p dChpdGVyX2hlYWRfcGFnZSk7CiAJc21wX3JtYigpOworCS8qIEFuIGV2ZW50IG5lZWRzIHRvIGJl IGF0IGxlYXN0IDggYnl0ZXMgaW4gc2l6ZSAqLworCWlmIChpdGVyLT5oZWFkID4gY29tbWl0IC0g OCkKKwkJZ290byByZXNldDsKKwogCWV2ZW50ID0gX19yYl9wYWdlX2luZGV4KGl0ZXJfaGVhZF9w YWdlLCBpdGVyLT5oZWFkKTsKIAlsZW5ndGggPSByYl9ldmVudF9sZW5ndGgoZXZlbnQpOwogCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0t a2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcK aHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2Vy bmVsCg==