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=-19.0 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI, NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 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 2EAEEC4338F for ; Mon, 16 Aug 2021 06:42:09 +0000 (UTC) Received: from lists.sourceforge.net (lists.sourceforge.net [216.105.38.7]) (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 D41436140D; Mon, 16 Aug 2021 06:42:08 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org D41436140D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.sourceforge.net Received: from [127.0.0.1] (helo=sfs-ml-4.v29.lw.sourceforge.com) by sfs-ml-4.v29.lw.sourceforge.com with esmtp (Exim 4.90_1) (envelope-from ) id 1mFWK0-0007BB-8d; Mon, 16 Aug 2021 06:42:08 +0000 Received: from [172.30.20.202] (helo=mx.sourceforge.net) by sfs-ml-4.v29.lw.sourceforge.com with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mFWJz-0007B5-5s for linux-f2fs-devel@lists.sourceforge.net; Mon, 16 Aug 2021 06:42:07 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sourceforge.net; s=x; h=Content-Transfer-Encoding:Content-Type:In-Reply-To: MIME-Version:Date:Message-ID:From:References:Cc:To:Subject:Sender:Reply-To: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=Fq3zC6TxrJ7wnET3ctJ9AEVAzp2Vf4zNH2VUOyMj2T8=; b=IqsdHKIi3ZVEFDNnRWKrSSh2K1 MS31Wvaj5ZAkSMypW6RenBSuXf7U4rD6vgUVUP2UEtxaJLNmQFjZH/ng1a7sjfzkqO3+ackMFEFxv zEmXK19yBUtH/pxdXwe+NaptMNL2qETpUByNXJxl9WJNi5fvIYaw4moHYjwBRupraieA=; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sf.net; s=x ; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:MIME-Version:Date: Message-ID:From:References:Cc:To:Subject:Sender:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=Fq3zC6TxrJ7wnET3ctJ9AEVAzp2Vf4zNH2VUOyMj2T8=; b=W4PrjdD/D0ODMKZTI3GQrctmzf eo5jQJzK76XfNrQvU0nxcAg0jlWAfHjb5MTG9vO0Dt4Z68QBG9+ht9NVaaoEd+8DZYCKK6Db/b/2a h3tTOei9La+BvA5Vv2gALT+8G7FkBtT1o8ju77gxE5qIuNSlI364vV84XPXW9XsPUm90=; Received: from mail.kernel.org ([198.145.29.99]) by sfi-mx-1.v28.lw.sourceforge.com with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.92.3) id 1mFWJv-007z21-QW for linux-f2fs-devel@lists.sourceforge.net; Mon, 16 Aug 2021 06:42:07 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id C1C4361A51; Mon, 16 Aug 2021 06:41:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1629096108; bh=O8dpjKa3LoFhx1uZWjgWVWjFUc5corw5KPdK4GWHD80=; h=Subject:To:Cc:References:From:Date:In-Reply-To:From; b=gFQi9tedmh5BXSbzTqAybSYyXPQPQiC+RwW62EAbwkAFZJAozqqXviXot5x11Rmr2 F04A4gAqonO8y7aLbYYknMhgQSNmgUXZMakrU+1OEnF36bIkzoUCAM5nn7cc26Jyig Zccsd6+u3RAQqbFeIw9Q3JSXoqJd2SNf1XgkD6UvCk6KUcP5UCqDnOShBw2Ep5LCVe /CXRcMx+Jo20gM4kLPsa/nwZbwRY80h9SPFS0WrnQBowBTelvV9sW5eQHRSgu7JyHy 8XaUnCoMlIfod3zCqehpbZulwoTQIcuCPcDG7CfOS/G/cSFhI12QUkqNTXiwB0ZISr Ab25LR2V1n4RA== To: =?UTF-8?B?5p2O5oms6Z+s?= , jaegeuk@kernel.org References: From: Chao Yu Message-ID: <2692c9c0-bb9f-0dd2-f0ca-6abb89e34c47@kernel.org> Date: Mon, 16 Aug 2021 14:41:46 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0 MIME-Version: 1.0 In-Reply-To: Content-Language: en-US X-Headers-End: 1mFWJv-007z21-QW Subject: Re: [f2fs-dev] [PATCH v6] f2fs: introduce /sys/fs/f2fs//fsck_stack node X-BeenThere: linux-f2fs-devel@lists.sourceforge.net X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-kernel@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: linux-f2fs-devel-bounces@lists.sourceforge.net T24gMjAyMS84LzE2IDEyOjAyLCDmnY7miazpn6wgd3JvdGU6Cj4gSEkgQ2hhbywKPj4+IFNCSV9O RUVEX0ZTQ0sgaXMgYW4gaW5kaWNhdG9yIHRoYXQgZnNjay5mMmZzIG5lZWRzIHRvIGJlIHRyaWdn ZXJlZCwKPj4+IHRoaXMgZmxhZyBpcyBzZXQgaW4gdG9vIG1hbnkgcGxhY2VzLiBGb3Igc29tZSBz Y2VuZXMgdGhhdCBhcmUgbm90IHZlcnkKPj4+IHJlcHJvZHVjaWJsZSwgYWRkaW5nIHN0YWNrIGlu Zm9ybWF0aW9uIHdpbGwgaGVscCBsb2NhdGUgdGhlIHByb2JsZW0uCj4+Pgo+Pj4gTGV0J3MgcmVj b3JkIGFsbCBmc2NrIHN0YWNrIGhpc3RvcnksIEkgYWRkZWQgRjJGU19GU0NLX1NUQUNLX1RSQUNF Cj4+PiBjb25maWd1cmF0aW9uIG9wdGlvbnMgYW5kIHN5c2ZzIG5vZGVzLiBBZnRlciBvcGVuaW5n IHRoZSBjb25maWd1cmF0aW9uCj4+PiBvcHRpb25zIGFuZCBlbmFibGluZyB0aGUgbm9kZSwgaXQg d2lsbCBzdGFydCByZWNvcmRpbmcuIFRoZSByZWNvcmRlZAo+Pj4gc3RhY2sgaW5mb3JtYXRpb24g d2lsbCBub3QgYmUgY2xlYXIsIGFuZCB3ZSBjYW4gZ2V0IGluZm9ybWF0aW9uIGZvcm0KPj4+IGtl cm5lbCBsb2cuCj4+Pgo+Pj4gU2lnbmVkLW9mZi1ieTogWWFuZ3RhbyBMaSA8ZnJhbmsubGlAdml2 by5jb20+Cj4+PiAtLS0KPj4+ICAgIERvY3VtZW50YXRpb24vQUJJL3Rlc3Rpbmcvc3lzZnMtZnMt ZjJmcyB8ICA3ICsrKysKPj4+ICAgIGZzL2YyZnMvS2NvbmZpZyAgICAgICAgICAgICAgICAgICAg ICAgICB8IDEwICsrKysrKwo+Pj4gICAgZnMvZjJmcy9mMmZzLmggICAgICAgICAgICAgICAgICAg ICAgICAgIHwgNDUgKysrKysrKysrKysrKysrKysrKysrKysrKwo+Pj4gICAgZnMvZjJmcy9zeXNm cy5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgMjcgKysrKysrKysrKysrKysrCj4+PiAgICA0 IGZpbGVzIGNoYW5nZWQsIDg5IGluc2VydGlvbnMoKykKPj4+Cj4+PiBkaWZmIC0tZ2l0IGEvRG9j dW1lbnRhdGlvbi9BQkkvdGVzdGluZy9zeXNmcy1mcy1mMmZzIGIvRG9jdW1lbnRhdGlvbi9BQkkv dGVzdGluZy9zeXNmcy1mcy1mMmZzCj4+PiBpbmRleCBlZjRiOTIxOGFlMWUuLjA0N2MzOTgwOTNj ZiAxMDA2NDQKPj4+IC0tLSBhL0RvY3VtZW50YXRpb24vQUJJL3Rlc3Rpbmcvc3lzZnMtZnMtZjJm cwo+Pj4gKysrIGIvRG9jdW1lbnRhdGlvbi9BQkkvdGVzdGluZy9zeXNmcy1mcy1mMmZzCj4+PiBA QCAtNDkzLDMgKzQ5MywxMCBAQCBDb250YWN0OgkiQ2hhbyBZdSIgPHl1Y2hhbzBAaHVhd2VpLmNv bT4KPj4+ICAgIERlc2NyaXB0aW9uOglXaGVuIEFUR0MgaXMgb24sIGl0IGNvbnRyb2xzIGFnZSB0 aHJlc2hvbGQgdG8gYnlwYXNzIEdDaW5nIHlvdW5nCj4+PiAgICAJCWNhbmRpZGF0ZXMgd2hvc2Ug YWdlIGlzIG5vdCBiZXlvbmQgdGhlIHRocmVzaG9sZCwgYnkgZGVmYXVsdCBpdCB3YXMKPj4+ICAg IAkJaW5pdGlhbGl6ZWQgYXMgNjA0ODAwIHNlY29uZHMgKGVxdWFscyB0byA3IGRheXMpLgo+Pj4g Kwo+Pj4gK1doYXQ6CQkvc3lzL2ZzL2YyZnMvPGRpc2s+L2ZzY2tfc3RhY2sKPj4+ICtEYXRlOgkJ QXVndXN0IDIwMjEKPj4+ICtDb250YWN0OgkiWWFuZ3RhbyBMaSIgPGZyYW5rLmxpQHZpdm8uY29t Pgo+Pj4gK0Rlc2NyaXB0aW9uOglDb250cm9scyB0byBlbmFibGUvZGlzYWJsZSBmc2NrIHN0YWNr IHRyYWNlLCB5b3UgY2FuIGdldCBzdGFjawo+Pj4gKwkJaW5mb3JtYXRpb24gZnJvbSBrZXJuZWwg bG9nLiBOb3RlIHRoYXQgdGhlIHJlY29yZGVkIHN0YWNrIGluZm9ybWF0aW9uCj4+PiArCQl3aWxs IG5vdCBiZSBjbGVhcmVkLgo+Pgo+PiBBZ2FpbiwgcGxlYXNlIGRvbid0IGFkZCB0aGlzIGludG8g c3lzZnMuCgpPaCwgSSBtaXNzZWQgdG8gY2hlY2sgdGhlIGRldGFpbHMuLi4KCj4gCj4gSSBhZGRl ZCB0aGlzIG5vZGUsIHBhcnQgb2YgdGhlIGlkZWEgaXMgdG8gdHJpZ2dlciB0aGUgZXhwb3J0IG9m IHN0YWNrIGluZm9ybWF0aW9uLgo+IFRoZXJlIGlzIG5vIGluZm9ybWF0aW9uIHRyYW5zbWl0dGVk IHRocm91Z2ggc3lzZnMgaGVyZSwgYnV0IHRoZSByZWNvcmQgb2YgdGhlIHN0YWNrIGlzIHN3aXRj aGVkIG9uIGFuZCBvZmYuCj4gSWYgZG9uJ3QgZXhwb3J0IHRoaXMgaW5mb3JtYXRpb24gdGhyb3Vn aCBwcm9jZnMgYW5kIHN5c2ZzLCBpcyB0aGVyZSBhIG1vcmUgYXBwcm9wcmlhdGUgd2F5PwoKV2Vs bCwgSSBkb3VidCB3aHkgd2Ugc2hvdWxkIGV4cG9ydCBzdGFjayBpbmZvIHZpYSBwcm9jL3N5c2Zz IG5vZGUgb3IKc3lzZnMgc3dpdGNoLgoKVGhvc2UgaW5mbyB3aWxsIGFsd2F5cyBiZSBuZWVkZWQg dG8gdHJvdWJsZXNob290IGlzc3VlcyBubyBtYXR0ZXIgaW4KdXNlciBvciBlbmcgdmVyc2lvbiBv ZiBBbmRyb2lkLCBjYW4gd2UganVzdCBwcmludCB0aGVtIGRpcmVjdGx5IGludG8Ka2VybmVsIG1l c3NhZ2UuLi4gd2hhdCBJIGNvbmNlcm4gaXMgd2UgbWF5IGxvc3QgdGhlIGJ1ZyBzY2VuZSBkdWUg dG8Kbm8gb25lIGNhbiBoZWxwIHRvIHRyaWdnZXIgZG1lc2cgcHJpbnRpbmcgdmlhIHN5c2ZzLgoK SmFlZ2V1aywgdGhvdWdodHM/Cgo+IAo+Pgo+Pj4gZGlmZiAtLWdpdCBhL2ZzL2YyZnMvS2NvbmZp ZyBiL2ZzL2YyZnMvS2NvbmZpZwo+Pj4gaW5kZXggNzY2OWRlN2I0OWNlLi5mNDUxZTU2N2U0YTgg MTAwNjQ0Cj4+PiAtLS0gYS9mcy9mMmZzL0tjb25maWcKPj4+ICsrKyBiL2ZzL2YyZnMvS2NvbmZp Zwo+Pj4gQEAgLTEzNSwzICsxMzUsMTMgQEAgY29uZmlnIEYyRlNfRlNfTFpPUkxFCj4+PiAgICAJ ZGVmYXVsdCB5Cj4+PiAgICAJaGVscAo+Pj4gICAgCSAgU3VwcG9ydCBMWk8tUkxFIGNvbXByZXNz IGFsZ29yaXRobSwgaWYgdW5zdXJlLCBzYXkgWS4KPj4+ICsKPj4+ICtjb25maWcgRjJGU19GU0NL X1NUQUNLX1RSQUNFCj4+Cj4+IEkgZG9uJ3QgdGhpbmsgd2UgbmVlZCBhbm90aGVyIGNvbmZpZyB0 byB3cmFwIHRoaXMgZnVuY3Rpb25hbGl0eSwgbWF5IGJlIHdlCj4+IGNhbiB1c2UgRjJGU19DSEVD S19GUyBpbnN0ZWFkLgo+IAo+IE9LLgo+IAo+Pgo+Pj4gKwlib29sICJGMkZTIGZzY2sgc3RhY2sg aW5mb3JtYXRpb24gcmVjb3JkIgo+Pj4gKwlkZXBlbmRzIG9uIEYyRlNfRlMKPj4+ICsJZGVwZW5k cyBvbiBTVEFDS0RFUE9UCj4+PiArCWRlZmF1bHQgeQo+Pj4gKwloZWxwCj4+PiArCSBTdXBwb3J0 IHByaW50aW5nIG91dCBmc2NrIHN0YWNrIGhpc3RvcnkuIFdpdGggdGhpcywgeW91IGhhdmUgdG8K Pj4+ICsJIHR1cm4gb24gImZzY2tfc3RhY2siIHN5c2ZzIG5vZGUuIFRoZW4geW91IGNhbiBnZXQg aW5mb3JtYXRpb24KPj4+ICsJIGZyb20ga2VybmVsIGxvZy4KPj4+IGRpZmYgLS1naXQgYS9mcy9m MmZzL2YyZnMuaCBiL2ZzL2YyZnMvZjJmcy5oCj4+PiBpbmRleCBlZThlYjMzZTJjMjUuLmIyZDFk MWE1YTNmYyAxMDA2NDQKPj4+IC0tLSBhL2ZzL2YyZnMvZjJmcy5oCj4+PiArKysgYi9mcy9mMmZz L2YyZnMuaAo+Pj4gQEAgLTI0LDYgKzI0LDggQEAKPj4+ICAgICNpbmNsdWRlIDxsaW51eC9xdW90 YW9wcy5oPgo+Pj4gICAgI2luY2x1ZGUgPGxpbnV4L3BhcnRfc3RhdC5oPgo+Pj4gICAgI2luY2x1 ZGUgPGNyeXB0by9oYXNoLmg+Cj4+PiArI2luY2x1ZGUgPGxpbnV4L3N0YWNrZGVwb3QuaD4KPj4+ ICsjaW5jbHVkZSA8bGludXgvc3RhY2t0cmFjZS5oPgo+Pj4gICAgCj4+PiAgICAjaW5jbHVkZSA8 bGludXgvZnNjcnlwdC5oPgo+Pj4gICAgI2luY2x1ZGUgPGxpbnV4L2ZzdmVyaXR5Lmg+Cj4+PiBA QCAtMTE3LDYgKzExOSw4IEBAIHR5cGVkZWYgdTMyIG5pZF90Owo+Pj4gICAgCj4+PiAgICAjZGVm aW5lIENPTVBSRVNTX0VYVF9OVU0JCTE2Cj4+PiAgICAKPj4+ICsjZGVmaW5lIEZTQ0tfU1RBQ0tf REVQVEgJCTY0Cj4+Cj4+IDE2Pwo+IAo+IE9LLgo+IAo+Pgo+Pj4gKwo+Pj4gICAgc3RydWN0IGYy ZnNfbW91bnRfaW5mbyB7Cj4+PiAgICAJdW5zaWduZWQgaW50IG9wdDsKPj4+ICAgIAlpbnQgd3Jp dGVfaW9fc2l6ZV9iaXRzOwkJLyogV3JpdGUgSU8gc2l6ZSBiaXRzICovCj4+PiBAQCAtMTc0OCw2 ICsxNzUyLDExIEBAIHN0cnVjdCBmMmZzX3NiX2luZm8gewo+Pj4gICAgCXVuc2lnbmVkIGludCBj b21wcmVzc193YXRlcm1hcms7CS8qIGNhY2hlIHBhZ2Ugd2F0ZXJtYXJrICovCj4+PiAgICAJYXRv bWljX3QgY29tcHJlc3NfcGFnZV9oaXQ7CQkvKiBjYWNoZSBoaXQgY291bnQgKi8KPj4+ICAgICNl bmRpZgo+Pj4gKyNpZmRlZiBDT05GSUdfRjJGU19GU0NLX1NUQUNLX1RSQUNFCj4+PiArCWRlcG90 X3N0YWNrX2hhbmRsZV90ICpmc2NrX3N0YWNrX2hpc3Rvcnk7Cj4+PiArCXVuc2lnbmVkIGludCBm c2NrX2NvdW50Owo+Pj4gKwlib29sIGZzY2tfc3RhY2s7Cj4+Cj4+IElNTywgYWxsIGJ1Z19vbigp cyBhcmUgY29ybmVyIGNhc2VzLCBhbmQgY2F0Y2hpbmcgdGhvc2Ugc3RhY2tzIHdvbid0IGNvc3QK Pj4gbXVjaCwgc28gd2UgY2FuIGp1c3QgdXNlIENPTkZJR19YWFggdG8gZW5hYmxlL2Rpc2FibGUg dGhpcyBmZWF0dXJlLgo+IAo+IEYyRlNfQ0hFQ0tfRlMg77yfCj4gCj4+Cj4+PiArI2VuZGlmCj4+ PiAgICB9Owo+Pj4gICAgCj4+PiAgICBzdHJ1Y3QgZjJmc19wcml2YXRlX2RpbyB7Cj4+PiBAQCAt MTk1NCw2ICsxOTYzLDM4IEBAIHN0YXRpYyBpbmxpbmUgc3RydWN0IGFkZHJlc3Nfc3BhY2UgKk5P REVfTUFQUElORyhzdHJ1Y3QgZjJmc19zYl9pbmZvICpzYmkpCj4+PiAgICAJcmV0dXJuIHNiaS0+ bm9kZV9pbm9kZS0+aV9tYXBwaW5nOwo+Pj4gICAgfQo+Pj4gICAgCj4+PiArI2lmZGVmIENPTkZJ R19GMkZTX0ZTQ0tfU1RBQ0tfVFJBQ0UKPj4+ICtzdGF0aWMgdm9pZCBmc2NrX3N0YWNrX3RyYWNl KHN0cnVjdCBmMmZzX3NiX2luZm8gKnNiaSkKPj4+ICt7Cj4+PiArCXVuc2lnbmVkIGxvbmcgZW50 cmllc1tGU0NLX1NUQUNLX0RFUFRIXTsKPj4+ICsJZGVwb3Rfc3RhY2tfaGFuZGxlX3Qgc3RhY2ss ICpuZXc7Cj4+PiArCXVuc2lnbmVkIGludCBucl9lbnRyaWVzOwo+Pj4gKwlpbnQgaTsKPj4+ICsK Pj4+ICsJaWYgKCFzYmktPmZzY2tfc3RhY2spCj4+PiArCQlyZXR1cm47Cj4+PiArCj4+PiArCW5y X2VudHJpZXMgPSBzdGFja190cmFjZV9zYXZlKGVudHJpZXMsIEFSUkFZX1NJWkUoZW50cmllcyks IDApOwo+Pj4gKwlucl9lbnRyaWVzID0gZmlsdGVyX2lycV9zdGFja3MoZW50cmllcywgbnJfZW50 cmllcyk7Cj4+PiArCXN0YWNrID0gc3RhY2tfZGVwb3Rfc2F2ZShlbnRyaWVzLCBucl9lbnRyaWVz LCBHRlBfS0VSTkVMKTsKPj4+ICsJaWYgKCFzdGFjaykKPj4+ICsJCXJldHVybjsKPj4+ICsKPj4+ ICsJLyogVHJ5IHRvIGZpbmQgYW4gZXhpc3RpbmcgZW50cnkgZm9yIHRoaXMgYmFja3RyYWNlICov Cj4+PiArCWZvciAoaSA9IDA7IGkgPCBzYmktPmZzY2tfY291bnQ7IGkrKykKPj4+ICsJCWlmIChz YmktPmZzY2tfc3RhY2tfaGlzdG9yeVtpXSA9PSBzdGFjaykKPj4+ICsJCQlyZXR1cm47Cj4+PiAr Cj4+PiArCW5ldyA9IGtyZWFsbG9jKHNiaS0+ZnNja19zdGFja19oaXN0b3J5LCAoc2JpLT5mc2Nr X2NvdW50ICsgMSkgKgo+Pj4gKwkJICAgICAgIHNpemVvZigqc2JpLT5mc2NrX3N0YWNrX2hpc3Rv cnkpLCBHRlBfS0VSTkVMKTsKPj4+ICsJaWYgKCFuZXcpCj4+PiArCQlyZXR1cm47Cj4+PiArCj4+ PiArCXNiaS0+ZnNja19zdGFja19oaXN0b3J5ID0gbmV3Owo+Pj4gKwlzYmktPmZzY2tfc3RhY2tf aGlzdG9yeVtzYmktPmZzY2tfY291bnQrK10gPSBzdGFjazsKPj4KPj4gSXQgd2lsbCBjYXNlIG1l bW9yeSBsZWFrIGFmdGVyIGYyZnMgbW9kdWxlIGV4aXRzLgo+IAo+IFNvIGxldCdzIGVuYWJsZSB0 aGlzIGZlYXR1cmUgd2hlbiBmMmZzIGlzIG5vdCBhIG1vZHVsZSBhbmQgZW5hYmxlIEYyRlNfQ0hF Q0tfRlMuCgpJIG1lYW4gaXQgbmVlZHMgdG8gZnJlZSAuZnNja19zdGFja19oaXN0b3J5IGR1cmlu ZyB1bW91bnQoKS4KClRoYW5rcywKCj4gCj4+Cj4+PiArfQo+Pj4gKyNlbmRpZgo+Pj4gKwo+Pj4g ICAgc3RhdGljIGlubGluZSBib29sIGlzX3NiaV9mbGFnX3NldChzdHJ1Y3QgZjJmc19zYl9pbmZv ICpzYmksIHVuc2lnbmVkIGludCB0eXBlKQo+Pj4gICAgewo+Pj4gICAgCXJldHVybiB0ZXN0X2Jp dCh0eXBlLCAmc2JpLT5zX2ZsYWcpOwo+Pj4gQEAgLTE5NjIsNiArMjAwMywxMCBAQCBzdGF0aWMg aW5saW5lIGJvb2wgaXNfc2JpX2ZsYWdfc2V0KHN0cnVjdCBmMmZzX3NiX2luZm8gKnNiaSwgdW5z aWduZWQgaW50IHR5cGUpCj4+PiAgICBzdGF0aWMgaW5saW5lIHZvaWQgc2V0X3NiaV9mbGFnKHN0 cnVjdCBmMmZzX3NiX2luZm8gKnNiaSwgdW5zaWduZWQgaW50IHR5cGUpCj4+PiAgICB7Cj4+PiAg ICAJc2V0X2JpdCh0eXBlLCAmc2JpLT5zX2ZsYWcpOwo+Pj4gKyNpZmRlZiBDT05GSUdfRjJGU19G U0NLX1NUQUNLX1RSQUNFCj4+PiArCWlmICh1bmxpa2VseSh0eXBlID09IFNCSV9ORUVEX0ZTQ0sp KQo+Pj4gKwkJZnNja19zdGFja190cmFjZShzYmkpOwo+Pj4gKyNlbmRpZgo+Pj4gICAgfQo+Pj4g ICAgCj4+PiAgICBzdGF0aWMgaW5saW5lIHZvaWQgY2xlYXJfc2JpX2ZsYWcoc3RydWN0IGYyZnNf c2JfaW5mbyAqc2JpLCB1bnNpZ25lZCBpbnQgdHlwZSkKPj4+IGRpZmYgLS1naXQgYS9mcy9mMmZz L3N5c2ZzLmMgYi9mcy9mMmZzL3N5c2ZzLmMKPj4+IGluZGV4IDIwNGRlNGMyYzgxOC4uNGU3ODZi Yjc5N2U3IDEwMDY0NAo+Pj4gLS0tIGEvZnMvZjJmcy9zeXNmcy5jCj4+PiArKysgYi9mcy9mMmZz L3N5c2ZzLmMKPj4+IEBAIC0zMDYsNiArMzA2LDI2IEBAIHN0YXRpYyBzc2l6ZV90IGYyZnNfc2Jp X3Nob3coc3RydWN0IGYyZnNfYXR0ciAqYSwKPj4+ICAgIAlpZiAoIXN0cmNtcChhLT5hdHRyLm5h bWUsICJjb21wcl9uZXdfaW5vZGUiKSkKPj4+ICAgIAkJcmV0dXJuIHN5c2ZzX2VtaXQoYnVmLCAi JXVcbiIsIHNiaS0+Y29tcHJfbmV3X2lub2RlKTsKPj4+ICAgICNlbmRpZgo+Pj4gKyNpZmRlZiBD T05GSUdfRjJGU19GU0NLX1NUQUNLX1RSQUNFCj4+PiArCWlmICghc3RyY21wKGEtPmF0dHIubmFt ZSwgImZzY2tfc3RhY2siKSkgewo+Pj4gKwkJdW5zaWduZWQgbG9uZyAqZW50cmllczsKPj4+ICsJ CXVuc2lnbmVkIGludCBucl9lbnRyaWVzOwo+Pj4gKwkJdW5zaWduZWQgaW50IGk7Cj4+PiArCQlp bnQgY291bnQ7Cj4+PiArCj4+PiArCQljb3VudCA9IHN5c2ZzX2VtaXQoYnVmLCAiJXVcbiIsIHNi aS0+ZnNja19zdGFjayk7Cj4+PiArCQlpZiAoIXNiaS0+ZnNja19zdGFjaykKPj4+ICsJCQlyZXR1 cm4gY291bnQ7Cj4+PiArCj4+PiArCQlmb3IgKGkgPSAwOyBpIDwgc2JpLT5mc2NrX2NvdW50OyBp KyspIHsKPj4+ICsJCQlucl9lbnRyaWVzID0gc3RhY2tfZGVwb3RfZmV0Y2goc2JpLT5mc2NrX3N0 YWNrX2hpc3RvcnlbaV0sICZlbnRyaWVzKTsKPj4+ICsJCQlpZiAoIWVudHJpZXMpCj4+PiArCQkJ CXJldHVybiBjb3VudDsKPj4+ICsJCQlzdGFja190cmFjZV9wcmludChlbnRyaWVzLCBucl9lbnRy aWVzLCAwKTsKPj4+ICsJCX0KPj4+ICsJCXJldHVybiBjb3VudDsKPj4+ICsJfQo+Pj4gKyNlbmRp Zgo+Pj4gICAgCj4+PiAgICAJdWkgPSAodW5zaWduZWQgaW50ICopKHB0ciArIGEtPm9mZnNldCk7 Cj4+PiAgICAKPj4+IEBAIC03NDAsNiArNzYwLDEwIEBAIEYyRlNfUldfQVRUUihBVEdDX0lORk8s IGF0Z2NfbWFuYWdlbWVudCwgYXRnY19jYW5kaWRhdGVfY291bnQsIG1heF9jYW5kaWRhdGVfY291 Cj4+PiAgICBGMkZTX1JXX0FUVFIoQVRHQ19JTkZPLCBhdGdjX21hbmFnZW1lbnQsIGF0Z2NfYWdl X3dlaWdodCwgYWdlX3dlaWdodCk7Cj4+PiAgICBGMkZTX1JXX0FUVFIoQVRHQ19JTkZPLCBhdGdj X21hbmFnZW1lbnQsIGF0Z2NfYWdlX3RocmVzaG9sZCwgYWdlX3RocmVzaG9sZCk7Cj4+PiAgICAK Pj4+ICsjaWZkZWYgQ09ORklHX0YyRlNfRlNDS19TVEFDS19UUkFDRQo+Pj4gK0YyRlNfUldfQVRU UihGMkZTX1NCSSwgZjJmc19zYl9pbmZvLCBmc2NrX3N0YWNrLCBmc2NrX3N0YWNrKTsKPj4+ICsj ZW5kaWYKPj4+ICsKPj4+ICAgICNkZWZpbmUgQVRUUl9MSVNUKG5hbWUpICgmZjJmc19hdHRyXyMj bmFtZS5hdHRyKQo+Pj4gICAgc3RhdGljIHN0cnVjdCBhdHRyaWJ1dGUgKmYyZnNfYXR0cnNbXSA9 IHsKPj4+ICAgIAlBVFRSX0xJU1QoZ2NfdXJnZW50X3NsZWVwX3RpbWUpLAo+Pj4gQEAgLTgxMiw2 ICs4MzYsOSBAQCBzdGF0aWMgc3RydWN0IGF0dHJpYnV0ZSAqZjJmc19hdHRyc1tdID0gewo+Pj4g ICAgCUFUVFJfTElTVChhdGdjX2NhbmRpZGF0ZV9jb3VudCksCj4+PiAgICAJQVRUUl9MSVNUKGF0 Z2NfYWdlX3dlaWdodCksCj4+PiAgICAJQVRUUl9MSVNUKGF0Z2NfYWdlX3RocmVzaG9sZCksCj4+ PiArI2lmZGVmIENPTkZJR19GMkZTX0ZTQ0tfU1RBQ0tfVFJBQ0UKPj4+ICsJQVRUUl9MSVNUKGZz Y2tfc3RhY2spLAo+Pj4gKyNlbmRpZgo+Pj4gICAgCU5VTEwsCj4+PiAgICB9Owo+Pj4gICAgQVRU UklCVVRFX0dST1VQUyhmMmZzKTsKPj4+Cj4gCj4gVGh4LAo+IFlhbmd0YW8KPiAKCgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpMaW51eC1mMmZzLWRldmVs IG1haWxpbmcgbGlzdApMaW51eC1mMmZzLWRldmVsQGxpc3RzLnNvdXJjZWZvcmdlLm5ldApodHRw czovL2xpc3RzLnNvdXJjZWZvcmdlLm5ldC9saXN0cy9saXN0aW5mby9saW51eC1mMmZzLWRldmVs Cg==