From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A4BF4606A889 for ; Sat, 14 Nov 2026 12:03:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=bombadil.20210309 header.b=hc5OmnR9; dkim=fail reason="signature verification failed" (2048-bit key) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20260515 header.b=ZBqU4DgI 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:MIME-Version:Reply-To:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Date:References: In-Reply-To:Cc:To:Subject:From:Message-ID:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Unsubscribe-Post:List-Owner; bh=0Am3zAlkEORH21gkofuGaLquTO6fNj8TwPKHNRNPotA=; b=hc5OmnR9+aldeaHjnbaHExClLN yLMChq875bp8GFKSVnJdrMsDT+mZCRiXoLipv7CV3iNj4DrarcRbpCOivZ+BFsEa5LOqBjsvRyzLc G32Rym0xmZBOq6bZ9WtbZ94Bwm3+Bs8K8QkqKnxA+2IjKMcUgGYDukXOJXXOqqZunU+vwAer/111/ L/a5mdKLsDIp38MGWPKNVqqr4QDynJwZH+tmU9aUePSea5qG/EQsTzg+dfx1vZG0lRua3NLzJ1f+C uN9LYepZFTIM7/u5sW1yzumij8/SK0Lse91VdW+WXZZXyfCD+cJe8ktvTCCmkygpk62qC3+CnARIw wz8KVq9w==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.100.1 #2 (Red Hat Linux)) id 1xSCTc-0000000Fypd-2boK; Sat, 14 Nov 2026 12:03:24 +0000 Received: from tor.source.kernel.org ([2600:3c04:e001:324:0:1991:8:25]) by bombadil.infradead.org with esmtps (Exim 4.100.1 #2 (Red Hat Linux)) id 1xSCTb-0000000FypT-0MQY for linux-mtd@lists.infradead.org; Sat, 14 Nov 2026 12:03:23 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by tor.source.kernel.org (Postfix) with ESMTP id 2ACB9602D3; Sat, 14 Nov 2026 12:03:22 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4FBAB1F000C4; Sat, 14 Nov 2026 12:03:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1794657801; bh=ZtvIFXoOKLAsH+V2h5HHt5wrTO8bTwuJgaiMNtvW4Sw=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=ZBqU4DgIsVF4fBQNr4bYIKhPWkjeKQvvtPUUd9Cz31YPzLVJOtMSWjDuH7EGA/h7n P2EPM9PNC3jDOgl7kqQR3OcR5SuiZnwdbTz/URj/thGHq6pavdyM9GR1V7q5+9Nr9L ogQpeDGM/vpkwHN2a+d6KH5p1Dq1y5+epVPBRSkaCZhhXeQqYtWZ7nOpi4phoiJOFa QW2WytooNIT+NaZ1bOtDLE6flFWVJJCUO+3bxaKOxlU9uNVzGHsSLlk/mD2Ae18ZH1 y1aN0XFGCVxI9RZanX5gvGBBfw/tKxhyoRW6iX00wFbvNon9+aBAYwguwpQmTyJmz/ sjdBN32e0lXhA== Message-ID: From: sashiko-bot@kernel.org Subject: Re: [PATCH v3 01/33] jfs: free uncommitted anonymous tlocks when evicting an inode To: "Christian Brauner" , "Jan Kara" Cc: "Al Viro" , linux-ext4@vger.kernel.org, linux-mm@kvack.org, linux-efi@vger.kernel.org, linux-mtd@lists.infradead.org, dsterba@suse.cz, tytso@mit.edu, "Mark Fasheh" , "Joel Becker" , "Joseph Qi" In-Reply-To: <20261113-work-fs-sb_rdonly-v3-1-0be92bb73709@kernel.org> References: <20261113-work-fs-sb_rdonly-v3-0-0be92bb73709@kernel.org> <20261113-work-fs-sb_rdonly-v3-1-0be92bb73709@kernel.org> Date: Sat, 14 Nov 2026 12:03:20 +0000 X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux MTD discussion mailing list List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: sashiko-reviews@lists.linux.dev X-Archived-By: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-mtd" X-Spam-Status: No, score=-8.9 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=4.0.1 X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on aws-us-west-2-korg-listserv-alma10-1 VGhhbmsgeW91IGZvciB5b3VyIGNvbnRyaWJ1dGlvbiEgU2FzaGlrbyBBSSByZXZpZXcgZm91bmQg MyBwb3RlbnRpYWwKaXNzdWVzIHRvIGNvbnNpZGVyOgotIFtNZWRpdW1dIGpmczogZmFsc2UgV0FS Tl9PTl9PTkNFKCkgaW4gamZzX2V2aWN0X2lub2RlKCkgb24gcmVhZC13cml0ZQogIG1vdW50cwot IFtNZWRpdW1dIGpmczogdHhBYm9ydEFub24oKSBhZnRlciBqZnNfZnJlZV96ZXJvX2xpbmsoKSBs ZWFrcyBtZXRhcGFnZXMKICBhbmQgdGxvY2tzCi0gW01lZGl1bV0gamZzOiByYWNlIGJldHdlZW4g amZzX2V2aWN0X2lub2RlKCksIHR4QWJvcnRBbm9uKCksIGFuZAogIHR4UXVpZXNjZSgpCi0tCgpj b21taXQgYTE1NjU1ZGZmMzJjNDhiMDljMzMxZDNlMDNlMTk4ZTIxNzMwMDhjMQpBdXRob3I6IENo cmlzdGlhbiBCcmF1bmVyIDxicmF1bmVyQGtlcm5lbC5vcmc+CgpqZnM6IGZyZWUgdW5jb21taXR0 ZWQgYW5vbnltb3VzIHRsb2NrcyB3aGVuIGV2aWN0aW5nIGFuIGlub2RlCgpUaGlzIGNvbW1pdCBh ZGRzIHR4QWJvcnRBbm9uKCkgYW5kIGNhbGxzIGl0IGZyb20gamZzX2V2aWN0X2lub2RlKCkgdG8K cmVsZWFzZSB1bmNvbW1pdHRlZCBhbm9ueW1vdXMgdHJhbnNhY3Rpb24gbG9ja3MgYW5kIG1ldGFw YWdlIHBpbnMgd2hlbiBhbgppbm9kZSBpcyBldmljdGVkIGJlZm9yZSB3cml0ZWJhY2sgY29tbWl0 cyB0aGVtLgoKPiBkaWZmIC0tZ2l0IGEvZnMvamZzL2lub2RlLmMgYi9mcy9qZnMvaW5vZGUuYwo+ IGluZGV4IGM3OTE0ZGJjOTFlZDkuLjYzOTBkOTE1YzdmMTEgMTAwNjQ0Cj4gLS0tIGEvZnMvamZz L2lub2RlLmMKPiArKysgYi9mcy9qZnMvaW5vZGUuYwo+IEBAIC0xNzIsNiArMTcyLDE1IEBAIHZv aWQgamZzX2V2aWN0X2lub2RlKHN0cnVjdCBpbm9kZSAqaW5vZGUpCj4gIAljbGVhcl9pbm9kZShp bm9kZSk7Cj4gIAlkcXVvdF9kcm9wKGlub2RlKTsKPiAgCj4gKwkvKgo+ICsJICogV3JpdGViYWNr IGNvbW1pdHMgdGhlIGFub255bW91cyB0cmFuc2FjdGlvbnMgb2YgYWxsb2NhdGlvbnMuIElmIHRo ZQo+ICsJICogZmlsZXN5c3RlbSB3ZW50IHJlYWQtb25seSB3aXRob3V0IGEgc3luYywgZS5nLiBh ZnRlciBhbiBlcnJvciwKPiArCSAqIG5vdGhpbmcgZGlkLgo+ICsJICovCj4gKwlpZiAoamktPmF0 bGhlYWQpIHsKPiArCQlXQVJOX09OX09OQ0UoIXNiX3Jkb25seShpbm9kZS0+aV9zYikpOwoKW1Nl dmVyaXR5OiBNZWRpdW1dCkNhbiBXQVJOX09OX09OQ0UoIXNiX3Jkb25seShpbm9kZS0+aV9zYikp IGZpcmUgb24gYSByZWFkLXdyaXRlIG1vdW50IHdoZW4KamktPmF0bGhlYWQgaXMgbGVmdCBwb3B1 bGF0ZWQgd2l0aG91dCBzZXR0aW5nIENPTU1JVF9EaXJ0eT8KCkluIGV4dEFsbG9jKCksIHh0RXh0 ZW5kKCkgYW5kIHh0SW5zZXJ0KCkgYWNxdWlyZSBhbm9ueW1vdXMgdGxvY2tzIG9uCm5vbi1yb290 IHh0cmVlIG1ldGFwYWdlcyB2aWEgdHhMb2NrKCkgYmVmb3JlIHNwbGl0dGluZyBwYWdlcyBpbgp4 dFNwbGl0VXAoKS4gIFdoZW4geHRTcGxpdFVwKCkgZmFpbHMgd2l0aCAtRU5PU1BDIG9yIC1FRFFV T1QsIGV4dEFsbG9jKCkKZnJlZXMgdGhlIGRhdGEgYmxvY2tzIGFuZCByZXR1cm5zIGJlZm9yZSBj YWxsaW5nIG1hcmtfaW5vZGVfZGlydHkoaXApOgoKZnMvamZzL2pmc19leHRlbnQuYzpleHRBbGxv YygpIHsKCS4uLgoJaWYgKHhhZGRyICYmIHhhZGRyID09IG54YWRkcikKCQlyYyA9IHh0RXh0ZW5k KDAsIGlwLCB4b2ZmLCAoaW50KSBueGxlbiwgMCk7CgllbHNlCgkJcmMgPSB4dEluc2VydCgwLCBp cCwgeGZsYWcsIHhvZmYsIChpbnQpIG54bGVuLCAmbnhhZGRyLCAwKTsKCgkvKiBpZiB0aGUgZXh0 ZW5kIG9yIGluc2VydCBmYWlsZWQsCgkgKiBmcmVlIHRoZSBuZXdseSBhbGxvY2F0ZWQgYmxvY2tz IGFuZCByZXR1cm4gdGhlIGVycm9yLgoJICovCglpZiAocmMpIHsKCQlkYkZyZWUoaXAsIG54YWRk ciwgbnhsZW4pOwoJCWRxdW90X2ZyZWVfYmxvY2soaXAsIG54bGVuKTsKCQltdXRleF91bmxvY2so JkpGU19JUChpcCktPmNvbW1pdF9tdXRleCk7CgkJcmV0dXJuIChyYyk7Cgl9CgkuLi4KCW1hcmtf aW5vZGVfZGlydHkoaXApOwp9CgpCZWNhdXNlIENPTU1JVF9EaXJ0eSBpcyBuZXZlciBzZXQgb24g dGhlIGlub2RlLCBqZnNfd3JpdGVfaW5vZGUoKSBkb2VzIG5vdApjb21taXQgdGhlIGFub255bW91 cyB0bG9ja3MsIGFuZCBldmljdGluZyB0aGUgaW5vZGUgdHJpZ2dlcnMgdGhlIHdhcm5pbmcgb24K YSByZWFkLXdyaXRlIGZpbGVzeXN0ZW0uICBUaGUgd2FybmluZyBhbHNvIHRyaWdnZXJzIGFmdGVy IGEgZmlsZXN5c3RlbQplcnJvciB3aGVuIG1vdW50ZWQgd2l0aCBlcnJvcnM9Y29udGludWUsIHdo ZXJlIGpmc19oYW5kbGVfZXJyb3IoKSBtYXJrcyB0aGUKc3VwZXJibG9jayBkaXJ0eSB3aXRob3V0 IHNldHRpbmcgU0JfUkRPTkxZLCBvciB2aWEgZXh0UmVjb3JkKCkgLT4KeHRVcGRhdGUoKSwgd2hp Y2ggaXMgZml4ZWQgaW4gYSBsYXRlciBwYXRjaCBpbiB0aGlzIHNlcmllcyAoY29tbWl0ICJqZnM6 CmRvbid0IHNldCBTQl9SRE9OTFkgYWZ0ZXIgZmlsZXN5c3RlbSBlcnJvcnMiKS4KCj4gKwkJdHhB Ym9ydEFub24oaW5vZGUpOwo+ICsJfQoKW1NldmVyaXR5OiBNZWRpdW1dCkRvZXMgY2FsbGluZyB0 eEFib3J0QW5vbigpIGFmdGVyIGpmc19mcmVlX3plcm9fbGluaygpIGxlYWsgbWV0YXBhZ2VzIGFu ZApsaW5lbG9ja3Mgd2hlbiBhbiB1bmxpbmtlZCBpbm9kZSB3aXRoIENPTU1JVF9GcmVld21hcCBp cyBldmljdGVkIGFmdGVyIGFuCmVycm9yPwoKRWFybGllciBpbiBqZnNfZXZpY3RfaW5vZGUoKSwg YW4gdW5saW5rZWQgaW5vZGUgd2l0aCBDT01NSVRfRnJlZXdtYXAgY2FsbHMKamZzX2ZyZWVfemVy b19saW5rKCkgLT4geHRUcnVuY2F0ZSguLi4sIENPTU1JVF9XTUFQKS4gIEZvciBlYWNoIG5vbi1y b290Cnh0cmVlIG1ldGFwYWdlLCB4dFRydW5jYXRlKCkgbWFya3MgbXAtPmxpZCB3aXRoIHRsY2tG UkVFTE9DSywgY2FsbHMKZGlzY2FyZF9tZXRhcGFnZShtcCksIGFuZCBmaW5pc2hlcyB3aXRoIHR4 RnJlZWxvY2soaXApOgoKZnMvamZzL2pmc190eG5tZ3IuYzp0eEZyZWVsb2NrKCkgewoJLi4uCgl3 aGlsZSAoKGxpZCA9IHh0bGNrLT5uZXh0KSAhPSAwKSB7CgkJdGxjayA9IGxpZF90b190bG9jayhs aWQpOwoJCWlmICh0bGNrLT5mbGFnICYgdGxja0ZSRUVMT0NLKSB7CgkJCXh0bGNrLT5uZXh0ID0g dGxjay0+bmV4dDsKCQkJdHhMb2NrRnJlZShsaWQpOwoJCX0gZWxzZSB7CgkuLi4KfQoKSWYgdGhl IHRyYW5zYWN0aW9uIGluIGpmc191bmxpbmsoKSBvciBqZnNfcmVuYW1lKCkgYWJvcnRlZCBhZnRl cgpjb21taXRaZXJvTGluaygpIHNldCBDT01NSVRfRnJlZXdtYXAsIGppLT5hdGxoZWFkIHN0aWxs IGhvbGRzIGFub255bW91cwp0bGNrUEFHRUxPQ0sgdGxvY2tzIHdoZW4gamZzX2V2aWN0X2lub2Rl KCkgcnVucy4gIHR4RnJlZWxvY2soKSB1bmxpbmtzCnRob3NlIHRsb2NrcyBmcm9tIGppLT5hdGxo ZWFkIGFuZCBmcmVlcyBsaWQgYmVmb3JlIHR4QWJvcnRBbm9uKCkgcnVucywKd2l0aG91dCBkcm9w cGluZyBtcC0+bm9ob21lb2ssIGNsZWFyaW5nIG1wLT5saWQsIG9yIGZyZWVpbmcgY2hhaW5lZAps aW5lbG9ja3MuICBDYWxsaW5nIHR4QWJvcnRBbm9uKCkgYmVmb3JlIGpmc19mcmVlX3plcm9fbGlu aygpIHdvdWxkIHJlbGVhc2UKdGhlIG1ldGFwYWdlIHBpbnMgYW5kIGxpbmVsb2NrcyBiZWZvcmUg eHRUcnVuY2F0ZSgpIGRpc2NhcmRzIHRoZSBwYWdlcy4KCj4gZGlmZiAtLWdpdCBhL2ZzL2pmcy9q ZnNfdHhubWdyLmMgYi9mcy9qZnMvamZzX3R4bm1nci5jCj4gaW5kZXggMDgzZGJiYjBjMzI2OC4u ODUxOTJkZDQ0NjFhNCAxMDA2NDQKPiAtLS0gYS9mcy9qZnMvamZzX3R4bm1nci5jCj4gKysrIGIv ZnMvamZzL2pmc190eG5tZ3IuYwo+IEBAIC0yNTgxLDYgKzI1ODEsNzQgQEAgdm9pZCB0eEZyZWVs b2NrKHN0cnVjdCBpbm9kZSAqaXApCj4gIAlUWE5fVU5MT0NLKCk7Cj4gIH0KPiAgCj4gKy8qCj4g KyAqCXR4QWJvcnRBbm9uKCkKPiArICoKPiArICogZnVuY3Rpb246CWZyZWUgdGhlIGFub255bW91 cyB0bG9ja3Mgb2YgYW4gaW5vZGUgdGhhdCBpcyBldmljdGVkCj4gKyAqCQliZWZvcmUgd3JpdGVi YWNrIGNvbW1pdHRlZCB0aGVtLCBlLmcuIGJlY2F1c2UgYW4gZXJyb3IgbWFkZQo+ICsgKgkJdGhl IGZpbGVzeXN0ZW0gcmVhZC1vbmx5Lgo+ICsgKgo+ICsgKiBBIHBhZ2UgdGhhdCBjYXJyaWVzIG5v dGhpbmcgYnV0IHVuY29tbWl0dGVkIGNoYW5nZXMgaXNuJ3Qgd3JpdHRlbiBob21lLgo+ICsgKiBB IHBhZ2UgdGhhdCBpcyBhbHNvIHdhaXRpbmcgdG8gZ28gaG9tZSB3aXRoIGNvbW1pdHRlZCBjaGFu Z2VzIChtcC0+bHNuKQo+ICsgKiBnb2VzIGhvbWUgd2l0aCBib3RoLCBhZnRlciBhbiBlcnJvciB0 aGUgc3VwZXJibG9jayBpcyBtYXJrZWQgZGlydHkuCj4gKyAqLwo+ICt2b2lkIHR4QWJvcnRBbm9u KHN0cnVjdCBpbm9kZSAqaXApCj4gK3sKPiArCXN0cnVjdCBqZnNfaW5vZGVfaW5mbyAqamZzX2lw ID0gSkZTX0lQKGlwKTsKPiArCXN0cnVjdCBsaW5lbG9jayAqbGluZWxvY2s7Cj4gKwlzdHJ1Y3Qg bWV0YXBhZ2UgKm1wOwo+ICsJc3RydWN0IHRsb2NrICp0bGNrOwo+ICsJbGlkX3QgbGlkLCBuZXh0 LCBsbGlkLCBrOwo+ICsKPiArCS8qIHR4UXVpZXNjZSgpIGFuZCBqZnNfc3luYygpIGNvbW1pdCB1 bmRlciB0aGUgY29tbWl0X211dGV4ICovCj4gKwltdXRleF9sb2NrKCZqZnNfaXAtPmNvbW1pdF9t dXRleCk7Cj4gKwo+ICsJVFhOX0xPQ0soKTsKPiArCWxpZCA9IGpmc19pcC0+YXRsaGVhZDsKPiAr CWpmc19pcC0+YXRsaGVhZCA9IGpmc19pcC0+YXRsdGFpbCA9IDA7Cj4gKwlsaXN0X2RlbF9pbml0 KCZqZnNfaXAtPmFub25faW5vZGVfbGlzdCk7Cj4gKwlUWE5fVU5MT0NLKCk7CgpbU2V2ZXJpdHk6 IE1lZGl1bV0KQ2FuIGpmc19ldmljdF9pbm9kZSgpIGFuZCB0eEFib3J0QW5vbigpIHJhY2Ugd2l0 aCB0eFF1aWVzY2UoKSB3YWxraW5nIHRoZQpnbG9iYWwgVHhBbmNob3IuYW5vbl9saXN0PwoKdHhR dWllc2NlKCkgd2Fsa3MgVHhBbmNob3IuYW5vbl9saXN0IChzaGFyZWQgYWNyb3NzIGFsbCBKRlMg bW91bnRzKSB1bmRlcgpUWE5fTE9DSygpIGFuZCBkcm9wcyBUWE5fTE9DSygpIHdpdGhvdXQgcGlu bmluZyB0aGUgaW5vZGUgYmVmb3JlIHRha2luZwpjb21taXRfbXV0ZXg6CgpDUFUwICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgQ1BVMQp0eFF1aWVzY2UoKSAgICAgICAgICAgICAgICAgICAg ICAgamZzX2V2aWN0X2lub2RlKCkKICBUWE5fTE9DSygpICAgICAgICAgICAgICAgICAgICAgICAg dHhBYm9ydEFub24oKQogIGpmc19pcCA9IGxpc3RfZW50cnkoLi4uKSAgICAgICAgICAgIG11dGV4 X2xvY2soJmpmc19pcC0+Y29tbWl0X211dGV4KQogIFRYTl9VTkxPQ0soKSAgICAgICAgICAgICAg ICAgICAgICAgIFRYTl9MT0NLKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBsaXN0X2RlbF9pbml0KCZqZnNfaXAtPmFub25faW5vZGVfbGlzdCkKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBUWE5fVU5MT0NLKCkKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAuLi4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBtdXRleF91bmxvY2soJmpmc19pcC0+Y29tbWl0X211dGV4KQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAuLi4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRl c3Ryb3lfaW5vZGUoaXApCiAgdHhCZWdpbihpcC0+aV9zYiwgLi4uKQogIG11dGV4X2xvY2soJmpm c19pcC0+Y29tbWl0X211dGV4KSAgPC0tIHVzZS1hZnRlci1mcmVlCgpJbiB0aGUgb3Bwb3NpdGUg aW50ZXJsZWF2aW5nLCB0eENvbW1pdCgpIGNhbGxlZCBmcm9tIHR4UXVpZXNjZSgpIGNsZWFycwpq ZnNfaXAtPmF0bGhlYWQgPSAwIGJlZm9yZSB0YWtpbmcgVFhOX0xPQ0soKSB0byByZW1vdmUKamZz X2lwLT5hbm9uX2lub2RlX2xpc3QuICBCZWNhdXNlIGpmc19ldmljdF9pbm9kZSgpIGNoZWNrcyBp ZiAoamktPmF0bGhlYWQpCndpdGhvdXQgY29tbWl0X211dGV4IG9yIFRYTl9MT0NLKCksIGl0IGNh biBzZWUgamktPmF0bGhlYWQgPT0gMCwgc2tpcAp0eEFib3J0QW5vbigpLCBhbmQgaGl0IEJVR19P TighbGlzdF9lbXB0eSgmamktPmFub25faW5vZGVfbGlzdCkpIG9yIGZyZWUKdGhlIGlub2RlIHdo aWxlIHR4Q29tbWl0KCkgaXMgc3RpbGwgcnVubmluZy4KCi0tIApTYXNoaWtvIEFJIHJldmlldyDC tyBodHRwczovL3Nhc2hpa28uZGV2LyMvcGF0Y2hzZXQvMjAyNjExMTMtd29yay1mcy1zYl9yZG9u bHktdjMtMC0wYmU5MmJiNzM3MDlAa2VybmVsLm9yZz9wYXJ0PTEKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpMaW51eCBNVEQgZGlzY3Vzc2lv biBtYWlsaW5nIGxpc3QKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5m by9saW51eC1tdGQvCg==