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 22101ECAAD3 for ; Thu, 1 Sep 2022 17:36:42 +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:Cc:To:From:Subject:Message-ID: Mime-Version:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To: References:List-Owner; bh=RE2QaOF6uVY8v50OEDDKDS/Sd+c/WS8il5URuw+Xsoo=; b=2Ku YPo+j6vWBXU8kmXXN7uG/x+JNqg4i7s0FjbwyDhs/HSAFENoYeIexyUxq+v96exqyvOWlPyj+ijr/ F/HtlZfsoemOhlVrbAsu0kEn6LfQzIrKPEXc3WmiHvqZg8BXTQo/voOHI8pYIsBHcpZeRKM4vPZ18 PB4X7TwEql6xMsspHiRgOdwZZohMaQkQkA6GnE96b+fdl72qDX+0oXASrZAe+//DI83VH5s4AMmC7 9L+I9Q6z5KupXhHC7lFAQRt0le5ReXUfQKBUIJuJyFrIWkkKrBVrkfY6UqGnMSSU49i0ZD+OLHC0p qGRe1hPZc+cjDc1HpyZItuMKwOTXQDw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oTo6C-00DbJO-Em; Thu, 01 Sep 2022 17:35:28 +0000 Received: from mail-yb1-xb4a.google.com ([2607:f8b0:4864:20::b4a]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oTo68-00DbFw-LF for linux-arm-kernel@lists.infradead.org; Thu, 01 Sep 2022 17:35:26 +0000 Received: by mail-yb1-xb4a.google.com with SMTP id f3-20020a056902038300b00696588a0e87so3562551ybs.3 for ; Thu, 01 Sep 2022 10:35:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=content-transfer-encoding:cc:to:from:subject:message-id :mime-version:date:from:to:cc:subject:date; bh=kDz45+x8leBVOf7Bdp0WiDEao4W3YXxkJImYKeLiow8=; b=UJ2NJSigmjvs38+mtpjC0YPaCWUde6cB0UL/bLufaGhMosguVjiiFe1oszFm36/Odc sUfw69wiCGaI3T90u9gbLBluz/hph0cewPRzHoAQw666Ao4RCcUg+CRGBoTlLAh+P8fw d6pa6e1ROBBUZrnr2K/YAABtJnqT1xqAFjYdpdHHFOI0Qj4R7XA51PC6fSlMGidZfaTe auU6PBRWiLtEO8ZKkl2afbBFNVW7/F0No/gyQzvcoDCPswV1JpNDwaFi4dzPo2uGVvT+ KyAW7FzT4zbe/qv1aeGuBipeT7ieMPk/X1LylsgIncU0zCOpr2t23+stO/KnyWKxRNvu oj8A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:cc:to:from:subject:message-id :mime-version:date:x-gm-message-state:from:to:cc:subject:date; bh=kDz45+x8leBVOf7Bdp0WiDEao4W3YXxkJImYKeLiow8=; b=WKef2rEcrcQc+yeqTffV7aYnxjXPS+8ggw2rWLiYYnCKpVaRGRtzGRWYpcHkiJOCOd Aps5cBE4gxQrhsBurkutNjnnnO6APPXqcERXLl8PNo0immZK266nrIFoDOvoQO2920Vo PA+LnJrhZazV4YvaKAKvAMh4X+1wLd/wTldZEKh5DQY1jjHJjGR/r11GezuUSkwnfM21 Pkn9JddDXiZAlTeglAXyMT+EQBU8Bh4vxrSPN/vWTuaElNIQqh2YHhx5LwmPZcdUAA/W EZvJcx01NTok7pBotWwFX+k4nlxudJVnvlGGTnTitC6LjdkiaN5b1O9WnsF3D9e4fUqq +vkQ== X-Gm-Message-State: ACgBeo07gG+yDKNgzRUKq9GudbxL+uyvLymlF5vsZt81TE8mav2l8Ab2 UO/hQbRi/bGb2WnMK7q0GbhWuYM5k7k= X-Google-Smtp-Source: AA6agR7afRN1POoQY9p1igScMyaFRYqs4/PVRqG8JF8uqVSGzSSN48hhlfxus/tnBm8aq/2o/zV00jvOX/w= X-Received: from surenb-desktop.mtv.corp.google.com ([2620:15c:211:200:1bfc:e7ee:6530:4449]) (user=surenb job=sendgmr) by 2002:a81:9e53:0:b0:340:8556:472d with SMTP id n19-20020a819e53000000b003408556472dmr23620124ywj.197.1662053720792; Thu, 01 Sep 2022 10:35:20 -0700 (PDT) Date: Thu, 1 Sep 2022 10:34:48 -0700 Mime-Version: 1.0 X-Mailer: git-send-email 2.37.2.789.g6183377224-goog Message-ID: <20220901173516.702122-1-surenb@google.com> Subject: [RFC PATCH RESEND 00/28] per-VMA locks proposal From: Suren Baghdasaryan To: akpm@linux-foundation.org Cc: michel@lespinasse.org, jglisse@google.com, mhocko@suse.com, vbabka@suse.cz, hannes@cmpxchg.org, mgorman@suse.de, dave@stgolabs.net, willy@infradead.org, liam.howlett@oracle.com, peterz@infradead.org, ldufour@linux.ibm.com, laurent.dufour@fr.ibm.com, paulmck@kernel.org, luto@kernel.org, songliubraving@fb.com, peterx@redhat.com, david@redhat.com, dhowells@redhat.com, hughd@google.com, bigeasy@linutronix.de, kent.overstreet@linux.dev, rientjes@google.com, axelrasmussen@google.com, joelaf@google.com, minchan@google.com, surenb@google.com, kernel-team@android.com, linux-mm@kvack.org, linux-arm-kernel@lists.infradead.org, linuxppc-dev@lists.ozlabs.org, x86@kernel.org, linux-kernel@vger.kernel.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220901_103524_708467_2322F03B X-CRM114-Status: GOOD ( 18.16 ) 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 UmVzZW5kaW5nIHRvIGZpeCB0aGUgaXNzdWUgd2l0aCB0aGUgSW4tUmVwbHktVG8gdGFnIGluIHRo ZSBvcmlnaW5hbApzdWJtaXNzaW9uIGF0IFs0XS4KClRoaXMgaXMgYSBwcm9vZiBvZiBjb25jZXB0 IGZvciBwZXItdm1hIGxvY2tzIGlkZWEgdGhhdCB3YXMgZGlzY3Vzc2VkCmR1cmluZyBTUEYgWzFd IGRpc2N1c3Npb24gYXQgTFNGL01NIHRoaXMgeWVhciBbMl0sIHdoaWNoIGNvbmNsdWRlZCB3aXRo CnN1Z2dlc3Rpb24gdGhhdCDigJxhIHJlYWRlci93cml0ZXIgc2VtYXBob3JlIGNvdWxkIGJlIHB1 dCBpbnRvIHRoZSBWTUEKaXRzZWxmOyB0aGF0IHdvdWxkIGhhdmUgdGhlIGVmZmVjdCBvZiB1c2lu ZyB0aGUgVk1BIGFzIGEgc29ydCBvZiByYW5nZQpsb2NrLiBUaGVyZSB3b3VsZCBzdGlsbCBiZSBj b250ZW50aW9uIGF0IHRoZSBWTUEgbGV2ZWwsIGJ1dCBpdCB3b3VsZCBiZSBhbgppbXByb3ZlbWVu dC7igJ0gVGhpcyBwYXRjaHNldCBpbXBsZW1lbnRzIHRoaXMgc3VnZ2VzdGVkIGFwcHJvYWNoLgoK V2hlbiBoYW5kbGluZyBwYWdlIGZhdWx0cyB3ZSBsb29rdXAgdGhlIFZNQSB0aGF0IGNvbnRhaW5z IHRoZSBmYXVsdGluZwpwYWdlIHVuZGVyIFJDVSBwcm90ZWN0aW9uIGFuZCB0cnkgdG8gYWNxdWly ZSBpdHMgbG9jay4gSWYgdGhhdCBmYWlscyB3ZQpmYWxsIGJhY2sgdG8gdXNpbmcgbW1hcF9sb2Nr LCBzaW1pbGFyIHRvIGhvdyBTUEYgaGFuZGxlZCB0aGlzIHNpdHVhdGlvbi4KCk9uZSBub3RhYmxl IHdheSB0aGUgaW1wbGVtZW50YXRpb24gZGV2aWF0ZXMgZnJvbSB0aGUgcHJvcG9zYWwgaXMgdGhl IHdheQpWTUFzIGFyZSBtYXJrZWQgYXMgbG9ja2VkLiBCZWNhdXNlIGR1cmluZyBzb21lIG9mIG1t IHVwZGF0ZXMgbXVsdGlwbGUKVk1BcyBuZWVkIHRvIGJlIGxvY2tlZCB1bnRpbCB0aGUgZW5kIG9m IHRoZSB1cGRhdGUgKGUuZy4gdm1hX21lcmdlLApzcGxpdF92bWEsIGV0YykuIFRyYWNraW5nIGFs bCB0aGUgbG9ja2VkIFZNQXMsIGF2b2lkaW5nIHJlY3Vyc2l2ZSBsb2NrcwphbmQgb3RoZXIgY29t cGxpY2F0aW9ucyB3b3VsZCBtYWtlIHRoZSBjb2RlIG1vcmUgY29tcGxleC4gVGhlcmVmb3JlIHdl CnByb3ZpZGUgYSB3YXkgdG8gIm1hcmsiIFZNQXMgYXMgbG9ja2VkIGFuZCB0aGVuIHVubWFyayBh bGwgbG9ja2VkIFZNQXMKYWxsIGF0IG9uY2UuIFRoaXMgaXMgZG9uZSB1c2luZyB0d28gc2VxdWVu Y2UgbnVtYmVycyAtIG9uZSBpbiB0aGUKdm1fYXJlYV9zdHJ1Y3QgYW5kIG9uZSBpbiB0aGUgbW1f c3RydWN0LiBWTUEgaXMgY29uc2lkZXJlZCBsb2NrZWQgd2hlbgp0aGVzZSBzZXF1ZW5jZSBudW1i ZXJzIGFyZSBlcXVhbC4gVG8gbWFyayBhIFZNQSBhcyBsb2NrZWQgd2Ugc2V0IHRoZQpzZXF1ZW5j ZSBudW1iZXIgaW4gdm1fYXJlYV9zdHJ1Y3QgdG8gYmUgZXF1YWwgdG8gdGhlIHNlcXVlbmNlIG51 bWJlcgppbiBtbV9zdHJ1Y3QuIFRvIHVubG9jayBhbGwgVk1BcyB3ZSBpbmNyZW1lbnQgbW1fc3Ry dWN0J3Mgc2VxIG51bWJlci4KVGhpcyBhbGxvd3MgZm9yIGFuIGVmZmljaWVudCB3YXkgdG8gdHJh Y2sgbG9ja2VkIFZNQXMgYW5kIHRvIGRyb3AgdGhlCmxvY2tzIG9uIGFsbCBWTUFzIGF0IHRoZSBl bmQgb2YgdGhlIHVwZGF0ZS4KClRoZSBwYXRjaHNldCBpbXBsZW1lbnRzIHBlci1WTUEgbG9ja2lu ZyBvbmx5IGZvciBhbm9ueW1vdXMgcGFnZXMgd2hpY2gKYXJlIG5vdCBpbiBzd2FwLiBJZiB0aGUg aW5pdGlhbCBwcm9wb3NhbCBpcyBjb25zaWRlcmVkIGFjY2VwdGFibGUsIHRoZW4Kc3VwcG9ydCBm b3Igc3dhcHBlZCBhbmQgZmlsZS1iYWNrZWQgcGFnZSBmYXVsdHMgd2lsbCBiZSBhZGRlZC4KClBl cmZvcm1hbmNlIGJlbmNobWFya3Mgc2hvdyBzaW1pbGFyIGFsdGhvdWdoIHNsaWdodGx5IHNtYWxs ZXIgYmVuZWZpdHMgYXMKd2l0aCBTUEYgcGF0Y2hzZXQgKH43NSUgb2YgU1BGIGJlbmVmaXRzKS4g U3RpbGwsIHdpdGggbG93ZXIgY29tcGxleGl0eQp0aGlzIGFwcHJvYWNoIG1pZ2h0IGJlIG1vcmUg ZGVzaXJhYmxlLgoKVGhlIHBhdGNoc2V0IGFwcGxpZXMgY2xlYW5seSBvdmVyIDYuMC1yYzMKVGhl IHRyZWUgZm9yIHRlc3RpbmcgaXMgcG9zdGVkIGF0IFszXQoKWzFdIGh0dHBzOi8vbG9yZS5rZXJu ZWwub3JnL2FsbC8yMDIyMDEyODEzMTAwNi42NzcxMi0xLW1pY2hlbEBsZXNwaW5hc3NlLm9yZy8K WzJdIGh0dHBzOi8vbHduLm5ldC9BcnRpY2xlcy84OTM5MDYvClszXSBodHRwczovL2dpdGh1Yi5j b20vc3VyZW5iYWdoZGFzYXJ5YW4vbGludXgvdHJlZS9wZXJfdm1hX2xvY2tfcmZjCls0XSBodHRw czovL2xvcmUua2VybmVsLm9yZy9hbGwvMjAyMjA4MjkyMTI1MzEuMzE4NDg1Ni0xLXN1cmVuYkBn b29nbGUuY29tLwoKTGF1cmVudCBEdWZvdXIgKDIpOgogIHBvd2VyYy9tbTogdHJ5IFZNQSBsb2Nr LWJhc2VkIHBhZ2UgZmF1bHQgaGFuZGxpbmcgZmlyc3QKICBwb3dlcnBjL21tOiBkZWZpbmUgQVJD SF9TVVBQT1JUU19QRVJfVk1BX0xPQ0sKCk1pY2hlbCBMZXNwaW5hc3NlICgxKToKICBtbTogcmN1 IHNhZmUgVk1BIGZyZWVpbmcKClN1cmVuIEJhZ2hkYXNhcnlhbiAoMjUpOgogIG1tOiBpbnRyb2R1 Y2UgQ09ORklHX1BFUl9WTUFfTE9DSwogIG1tOiBpbnRyb2R1Y2UgX19maW5kX3ZtYSB0byBiZSB1 c2VkIHdpdGhvdXQgbW1hcF9sb2NrIHByb3RlY3Rpb24KICBtbTogbW92ZSBtbWFwX2xvY2sgYXNz ZXJ0IGZ1bmN0aW9uIGRlZmluaXRpb25zCiAgbW06IGFkZCBwZXItVk1BIGxvY2sgYW5kIGhlbHBl ciBmdW5jdGlvbnMgdG8gY29udHJvbCBpdAogIG1tOiBtYXJrIFZNQSBhcyBsb2NrZWQgd2hlbmV2 ZXIgdm1hLT52bV9mbGFncyBhcmUgbW9kaWZpZWQKICBrZXJuZWwvZm9yazogbWFyayBWTUFzIGFz IGxvY2tlZCBiZWZvcmUgY29weWluZyBwYWdlcyBkdXJpbmcgZm9yawogIG1tL2todWdlcGFnZWQ6 IG1hcmsgVk1BIGFzIGxvY2tlZCB3aGlsZSBjb2xsYXBzaW5nIGEgaHVnZXBhZ2UKICBtbS9tZW1w b2xpY3k6IG1hcmsgVk1BIGFzIGxvY2tlZCB3aGVuIGNoYW5naW5nIHByb3RlY3Rpb24gcG9saWN5 CiAgbW0vbW1hcDogbWFyayBWTUFzIGFzIGxvY2tlZCBpbiB2bWFfYWRqdXN0CiAgbW0vbW1hcDog bWFyayBWTUFzIGFzIGxvY2tlZCBiZWZvcmUgbWVyZ2luZyBvciBzcGxpdHRpbmcgdGhlbQogIG1t L21yZW1hcDogbWFyayBWTUEgYXMgbG9ja2VkIHdoaWxlIHJlbWFwcGluZyBpdCB0byBhIG5ldyBh ZGRyZXNzCiAgICByYW5nZQogIG1tOiBjb25kaXRpb25hbGx5IG1hcmsgVk1BIGFzIGxvY2tlZCBp biBmcmVlX3BndGFibGVzIGFuZAogICAgdW5tYXBfcGFnZV9yYW5nZQogIG1tOiBtYXJrIFZNQXMg YXMgbG9ja2VkIGJlZm9yZSBpc29sYXRpbmcgdGhlbQogIG1tL21tYXA6IG1hcmsgYWRqYWNlbnQg Vk1BcyBhcyBsb2NrZWQgaWYgdGhleSBjYW4gZ3JvdyBpbnRvIHVubWFwcGVkCiAgICBhcmVhCiAg a2VybmVsL2Zvcms6IGFzc2VydCBubyBWTUEgcmVhZGVycyBkdXJpbmcgaXRzIGRlc3RydWN0aW9u CiAgbW0vbW1hcDogcHJldmVudCBwYWdlZmF1bHQgaGFuZGxlciBmcm9tIHJhY2luZyB3aXRoIG1t dV9ub3RpZmllcgogICAgcmVnaXN0cmF0aW9uCiAgbW06IGFkZCBGQVVMVF9GTEFHX1ZNQV9MT0NL IGZsYWcKICBtbTogZGlzYWxsb3cgZG9fc3dhcF9wYWdlIHRvIGhhbmRsZSBwYWdlIGZhdWx0cyB1 bmRlciBWTUEgbG9jawogIG1tOiBpbnRyb2R1Y2UgcGVyLVZNQSBsb2NrIHN0YXRpc3RpY3MKICBt bTogaW50cm9kdWNlIGZpbmRfYW5kX2xvY2tfYW5vbl92bWEgdG8gYmUgdXNlZCBmcm9tIGFyY2gt c3BlY2lmaWMKICAgIGNvZGUKICB4ODYvbW06IHRyeSBWTUEgbG9jay1iYXNlZCBwYWdlIGZhdWx0 IGhhbmRsaW5nIGZpcnN0CiAgeDg2L21tOiBkZWZpbmUgQVJDSF9TVVBQT1JUU19QRVJfVk1BX0xP Q0sKICBhcm02NC9tbTogdHJ5IFZNQSBsb2NrLWJhc2VkIHBhZ2UgZmF1bHQgaGFuZGxpbmcgZmly c3QKICBhcm02NC9tbTogZGVmaW5lIEFSQ0hfU1VQUE9SVFNfUEVSX1ZNQV9MT0NLCiAga2VybmVs L2Zvcms6IHRocm90dGxlIGNhbGxfcmN1KCkgY2FsbHMgaW4gdm1fYXJlYV9mcmVlCgogYXJjaC9h cm02NC9LY29uZmlnICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwogYXJjaC9hcm02NC9tbS9m YXVsdC5jICAgICAgICAgICAgICAgICAgfCAgMzYgKysrKysrKysrCiBhcmNoL3Bvd2VycGMvbW0v ZmF1bHQuYyAgICAgICAgICAgICAgICB8ICA0MSArKysrKysrKysrCiBhcmNoL3Bvd2VycGMvcGxh dGZvcm1zL3Bvd2VybnYvS2NvbmZpZyB8ICAgMSArCiBhcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3Bz ZXJpZXMvS2NvbmZpZyB8ICAgMSArCiBhcmNoL3g4Ni9LY29uZmlnICAgICAgICAgICAgICAgICAg ICAgICB8ICAgMSArCiBhcmNoL3g4Ni9tbS9mYXVsdC5jICAgICAgICAgICAgICAgICAgICB8ICAz NiArKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3B1X2Vycm9yLmMgIHwgICA0 ICstCiBmcy9wcm9jL3Rhc2tfbW11LmMgICAgICAgICAgICAgICAgICAgICB8ICAgMSArCiBmcy91 c2VyZmF1bHRmZC5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgNiArKwogaW5jbHVkZS9saW51 eC9tbS5oICAgICAgICAgICAgICAgICAgICAgfCAxMDQgKysrKysrKysrKysrKysrKysrKysrKysr LQogaW5jbHVkZS9saW51eC9tbV90eXBlcy5oICAgICAgICAgICAgICAgfCAgMzMgKysrKysrLS0K IGluY2x1ZGUvbGludXgvbW1hcF9sb2NrLmggICAgICAgICAgICAgIHwgIDM3ICsrKysrKy0tLQog aW5jbHVkZS9saW51eC92bV9ldmVudF9pdGVtLmggICAgICAgICAgfCAgIDYgKysKIGluY2x1ZGUv bGludXgvdm1zdGF0LmggICAgICAgICAgICAgICAgIHwgICA2ICsrCiBrZXJuZWwvZm9yay5jICAg ICAgICAgICAgICAgICAgICAgICAgICB8ICA3NSArKysrKysrKysrKysrKysrKy0KIG1tL0tjb25m aWcgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDEzICsrKysKIG1tL0tjb25maWcuZGVi dWcgICAgICAgICAgICAgICAgICAgICAgIHwgICA4ICsrCiBtbS9pbml0LW1tLmMgICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICAgNiArKwogbW0vaW50ZXJuYWwuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAgIDQgKy0KIG1tL2todWdlcGFnZWQuYyAgICAgICAgICAgICAgICAgICAgICAg IHwgICAxICsKIG1tL21hZHZpc2UuYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsK IG1tL21lbW9yeS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDgyICsrKysrKysrKysr KysrKystLS0KIG1tL21lbXBvbGljeS5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA2ICst CiBtbS9tbG9jay5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArCiBtbS9tbWFw LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA2MCArKysrKysrKysrLS0tLQogbW0v bXByb3RlY3QuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwogbW0vbXJlbWFwLmMg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwogbW0vbm9tbXUuYyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgIDIgKwogbW0vb29tX2tpbGwuYyAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAgIDMgKy0KIG1tL3Ztc3RhdC5jICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgICA2ICsrCiAzMSBmaWxlcyBjaGFuZ2VkLCA1MzEgaW5zZXJ0aW9ucygrKSwgNTQgZGVsZXRp b25zKC0pCgotLSAKMi4zNy4yLjc4OS5nNjE4MzM3NzIyNC1nb29nCgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5n IGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5p bmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=