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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 09535EF36E4 for ; Mon, 9 Mar 2026 06:29:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.sourceforge.net; s=beta; h=Content-Transfer-Encoding:Content-Type:Cc: Reply-To:From:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:Subject:In-Reply-To:References:To:MIME-Version:Date: Message-ID:Sender:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=W5ehBaEgI2tvWPclLbqGR1rwdxMHwMyJMjmYZ/mK/kY=; b=DIqQxe6HTlz2YOZ9oL4E/cdfLX J4VGnD42ikHI0Z3cxeHqg28cf9jNo5kPrhvPseurXqLTMOmg4rqYRmxz+MliHqo/0RnpRupNwrL+z Tx/XpmuoHLqbPZDq9HzgXyd8Rir/TbxNFEGHvphSdMRkQvGnTCUzj3fqmLRygV4DcT3A=; Received: from [127.0.0.1] (helo=sfs-ml-3.v29.lw.sourceforge.com) by sfs-ml-3.v29.lw.sourceforge.com with esmtp (Exim 4.95) (envelope-from ) id 1vzU7R-0000qf-6Z; Mon, 09 Mar 2026 06:29:33 +0000 Received: from [172.30.29.66] (helo=mx.sourceforge.net) by sfs-ml-3.v29.lw.sourceforge.com with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.95) (envelope-from ) id 1vzU7Q-0000qZ-32 for linux-f2fs-devel@lists.sourceforge.net; Mon, 09 Mar 2026 06:29:32 +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: From:References:To:Subject:Cc:MIME-Version:Date:Message-ID: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=an6zLdyPB7aY2514LQedcFIjxt4HV/jHSUYZ87cD5bM=; b=Lg8J9+LXqOtpOW/QazTiPor7Ss cSxMG/+wKMzv1tgBtSio+qiGELdqKLQnyyBwzeszuDYBuubWIhYZXrf76tLBr30lzbNzEXqWaNEd+ RI23gGDI/SQxIr+cehDlP/7vkrp5bpiytfQeBslnF6vnv+etd+9Lko7uNqorbQTfFTmE=; 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:From:References:To: Subject:Cc:MIME-Version:Date:Message-ID: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=an6zLdyPB7aY2514LQedcFIjxt4HV/jHSUYZ87cD5bM=; b=fR7RSeDBY6bMZebx4FkgZKXf2q URUmeHsTYEhRyt9csBApO9t97I8d7hQOOjzeOopDy2CH6um/7eSkwIvBZkisbRmoZkRDrqNWTd5dE CsOfm/ySTeV+rMKDCGX6WhOjMH4AQYW5mT5LM51scSHfoe2m9Mspq4djn6uomvzkyLp4=; Received: from tor.source.kernel.org ([172.105.4.254]) by sfi-mx-2.v28.lw.sourceforge.com with esmtps (TLS1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.95) id 1vzU7P-0003JE-8o for linux-f2fs-devel@lists.sourceforge.net; Mon, 09 Mar 2026 06:29:32 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by tor.source.kernel.org (Postfix) with ESMTP id 81034600AD; Mon, 9 Mar 2026 06:29:25 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2722FC2BC87; Mon, 9 Mar 2026 06:29:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773037765; bh=DnXYsOJsCPHOSLPx7kTktQHHpc2P+bWIiXTG5+RCipE=; h=Date:Cc:Subject:To:References:From:In-Reply-To:From; b=lqqzHUQF4kIQUByH1s9Vl6eNUaQvNbpK3fOBriry/J0r8zvTNayrOMkZtFj6Wwqfz znknIy4byLcG06H9zHzXCMHedO784g4YpRGNE5nR0ODm56USiFknp+Z/PmikT7Ggf7 Wk0NxgGBbJOuhbm/qmwdycRMM0Vf/SvhRyIbZysx49O0uCpOFSTBSGPj9bon+4UN1t 3zl1V2reyyHdDlU0Vd3GGeUV0IHH7osNXCdVE3wnRGowWvOS1Ko1BvWPDGAbc0dl2x PZSTGMoc0u743f5vxvXKfi1mory/u5/1y36Z0TQApGonaeEPLfQ8As5CIX8q5M8zOs LB1Y5GoFy7woA== Message-ID: <3b7ddc7b-c5fd-4ea2-b3da-9e128253078f@kernel.org> Date: Mon, 9 Mar 2026 14:29:22 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: liujinbao1 , jaegeuk@kernel.org References: <20260305134017.305991-1-jinbaoliu365@gmail.com> Content-Language: en-US In-Reply-To: <20260305134017.305991-1-jinbaoliu365@gmail.com> X-Headers-End: 1vzU7P-0003JE-8o Subject: Re: [f2fs-dev] [PATCH v2] f2fs: Add undiscard_blks_range and pending_discard_range sysfs 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: , From: Chao Yu via Linux-f2fs-devel Reply-To: Chao Yu Cc: liujinbao1 , linux-f2fs-devel@lists.sourceforge.net Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: linux-f2fs-devel-bounces@lists.sourceforge.net T24gMy81LzI2IDIxOjQwLCBsaXVqaW5iYW8xIHdyb3RlOgo+IEZyb206IGxpdWppbmJhbzEgPGxp dWppbmJhbzFAeGlhb21pLmNvbT4KPiAKPiBBZGQgdGhlIHVuZGlzY2FyZF9ibGtzX3JhbmdlIGFu ZCBwZW5kaW5nX2Rpc2NhcmRfcmFuZ2Ugc3lzZnMgbm9kZXMgdG8KPiBleHBvc2UgdGhlIHNpemUg ZGlzdHJpYnV0aW9uIG9mIHVuZGlzY2FyZCBibG9ja3MgYW5kIHBlbmRpbmcgZGlzY2FyZAo+IGNv bW1hbmRzLiBUaGVzZSBub2RlcyBjYXRlZ29yaXplIGJsb2NrcyBpbnRvIHRocmVlIHJhbmdlczoK PiAKPiBzbWFsbDogMS0xNSBibG9ja3PvvIxtaWRkbGU6IDE2LTUxMSBibG9ja3PvvIxsYXJnZTog NTEyIGFuZCBhYm92ZSBibG9ja3MKPiAKPiBUaGlzIGNsYXNzaWZpY2F0aW9uIGhlbHBzIGJldHRl ciB1bmRlcnN0YW5kIHRoZSBmcmFnbWVudGF0aW9uIHBhdHRlcm4KPiBvZiBkaXNjYXJkIG9wZXJh dGlvbnMuIEZvciBleGFtcGxlLCB3aGVuIHRvdGFsIHVuZGlzY2FyZCBibG9ja3MgYXJlIDc5NCwK PiB0aGUgdW5kaXNjYXJkX2Jsa3NfcmFuZ2Ugbm9kZSBzaG93czogInNtYWxsOiA0MjQsIG1pZDog MzcwLCBsYXJnZTogMCIsCj4gaW5kaWNhdGluZyB0aGF0IG1vc3QgdW5kaXNjYXJkIHJlZ2lvbnMg YXJlIHNtYWxsIG9yIG1lZGl1bSBzaXplZC4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBsaXVqaW5iYW8x IDxsaXVqaW5iYW8xQHhpYW9taS5jb20+Cj4gLS0tCj4gdjI6Cj4gLSBBZGQgcGVuZGluZ19kaXNj YXJkX3JhbmdlIHN5c2ZzIG5vZGUuCj4gLS0tCj4gdjE6Cj4gLSBBZGQgdW5kaXNjYXJkX2Jsa3Nf cmFuZ2Ugc3lzZnMgbm9kZS4KPiAtLS0KPiAgRG9jdW1lbnRhdGlvbi9BQkkvdGVzdGluZy9zeXNm cy1mcy1mMmZzIHwgMTQgKysrKysrKysrCj4gIGZzL2YyZnMvZjJmcy5oICAgICAgICAgICAgICAg ICAgICAgICAgICB8ICA5ICsrKysrKwo+ICBmcy9mMmZzL3NlZ21lbnQuYyAgICAgICAgICAgICAg ICAgICAgICAgfCAzOCArKysrKysrKysrKysrKysrKysrKysrKy0tCj4gIGZzL2YyZnMvc3lzZnMu YyAgICAgICAgICAgICAgICAgICAgICAgICB8IDI3ICsrKysrKysrKysrKysrKysrKwo+ICA0IGZp bGVzIGNoYW5nZWQsIDg2IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAt LWdpdCBhL0RvY3VtZW50YXRpb24vQUJJL3Rlc3Rpbmcvc3lzZnMtZnMtZjJmcyBiL0RvY3VtZW50 YXRpb24vQUJJL3Rlc3Rpbmcvc3lzZnMtZnMtZjJmcwo+IGluZGV4IGMxZDJiM2ZkOWM2NS4uNmVh NmUzNjkzODE0IDEwMDY0NAo+IC0tLSBhL0RvY3VtZW50YXRpb24vQUJJL3Rlc3Rpbmcvc3lzZnMt ZnMtZjJmcwo+ICsrKyBiL0RvY3VtZW50YXRpb24vQUJJL3Rlc3Rpbmcvc3lzZnMtZnMtZjJmcwo+ IEBAIC01MTYsNiArNTE2LDIwIEBAIERhdGU6CQlEZWNlbWJlciAyMDIzCj4gIENvbnRhY3Q6CSJa aGlndW8gTml1IiA8emhpZ3VvLm5pdUB1bmlzb2MuY29tPgo+ICBEZXNjcmlwdGlvbjoJU2hvd3Mg dGhlIHRvdGFsIG51bWJlciBvZiB1bmRpc2NhcmQgYmxvY2tzLgo+ICAKPiArV2hhdDoJCS9zeXMv ZnMvZjJmcy88ZGlzaz4vc3RhdC91bmRpc2NhcmRfYmxrc19yYW5nZQo+ICtEYXRlOgkJTWFyY2gg MjAyNgo+ICtDb250YWN0OgkiSmluYmFvIExpdSIgPGxpdWppbmJhbzFAeGlhb21pLmNvbT4KPiAr RGVzY3JpcHRpb246CVNob3cgdGhlIHRvdGFsIG51bWJlciBvZiB1bmRpc2NhcmQgYmxvY2tzIGJ5 IHJhbmdlLgo+ICsJCVJhbmdlczogc21hbGxbMS0xNV0sIG1pZGRsZVsxNi01MTFdLCBsYXJnZVs1 MTIrXQo+ICsJCUZvcm1hdDogInNtYWxsOiAldSwgbWlkOiAldSwgbGFyZ2U6ICV1XG4iCgpJcyBp dCBwb3NzaWJsZSB0byBleHBvc2UgdW5kaXNjYXJkIGJsb2NrcyB2aWEgL3Byb2MvZnMvZjJmcy88 ZGlzaz4vdW5kaXNjYXJkX2Jsb2NrcwpsaWtlIHdlIGRpZCBmb3IgZGlzY2FyZF9jbWRfY250IGlu IC9wcm9jL2ZzL2YyZnMvPGRpc2s+L2Rpc2NhcmRfcGxpc3RfaW5mbz8KCj4gKwo+ICtXaGF0OgkJ L3N5cy9mcy9mMmZzLzxkaXNrPi9zdGF0L3BlbmRpbmdfZGlzY2FyZF9yYW5nZQo+ICtEYXRlOgkJ TWFyY2ggMjAyNgo+ICtDb250YWN0OgkiSmluYmFvIExpdSIgPGxpdWppbmJhbzFAeGlhb21pLmNv bT4KPiArRGVzY3JpcHRpb246CVNob3cgdGhlIG51bWJlciBvZiBwZW5kaW5nIGRpc2NhcmQgY29t bWFuZHMgYnkgcmFuZ2UuCj4gKwkJUmFuZ2VzOiBzbWFsbFsxLTE1XSwgbWlkZGxlWzE2LTUxMV0s IGxhcmdlWzUxMitdCj4gKwkJRm9ybWF0OiAic21hbGw6ICV1LCBtaWQ6ICV1LCBsYXJnZTogJXVc biIKCldoYXQgZG8geW91IHRoaW5rIG9mIHF1ZXJ5aW5nIHBlbmRpbmcgZGlzY2FyZCBudW1iZXJz IGZyb20KL3Byb2MvZnMvZjJmcy88ZGlzaz4vZGlzY2FyZF9wbGlzdF9pbmZvPwoKVGhhbmtzLAoK PiArCj4gIFdoYXQ6CQkvc3lzL2ZzL2YyZnMvPGRpc2s+L2NrcHRfdGhyZWFkX2lvcHJpbwo+ICBE YXRlOgkJSmFudWFyeSAyMDIxCj4gIENvbnRhY3Q6CSJEYWVobyBKZW9uZyIgPGRhZWhvamVvbmdA Z29vZ2xlLmNvbT4KPiBkaWZmIC0tZ2l0IGEvZnMvZjJmcy9mMmZzLmggYi9mcy9mMmZzL2YyZnMu aAo+IGluZGV4IGJiMzRlODY0ZDBlZi4uOWQ2YjY2MGM0YTVmIDEwMDY0NAo+IC0tLSBhL2ZzL2Yy ZnMvZjJmcy5oCj4gKysrIGIvZnMvZjJmcy9mMmZzLmgKPiBAQCAtNDk0LDYgKzQ5NCwxMyBAQCBl bnVtIHsKPiAgCURQT0xJQ1lfSU9fQVdBUkVfTUFYLAo+ICB9Owo+ICAKPiArZW51bSBkaXNjYXJk X3JhbmdlIHsKPiArICAgIERJU0NBUkRfUkFOR0VfU01BTEwsCS8qIGNhY2hlZCBjbWQgb2YgcmFu Z2UgaW4gWzEsIDE1XSAqLwo+ICsgICAgRElTQ0FSRF9SQU5HRV9NSUQsCQkvKiBjYWNoZWQgY21k IG9mIHJhbmdlIGluIFsxNiwgNTExXSAqLwo+ICsgICAgRElTQ0FSRF9SQU5HRV9MQVJHRSwJLyog Y2FjaGVkIGNtZCBvZiByYW5nZSBpbiBbNTEyK10qLwo+ICsgICAgRElTQ0FSRF9SQU5HRV9OUgo+ ICt9Owo+ICsKPiAgc3RydWN0IGRpc2NhcmRfcG9saWN5IHsKPiAgCWludCB0eXBlOwkJCS8qIHR5 cGUgb2YgZGlzY2FyZCAqLwo+ICAJdW5zaWduZWQgaW50IG1pbl9pbnRlcnZhbDsJLyogdXNlZCBm b3IgY2FuZGlkYXRlcyBleGlzdCAqLwo+IEBAIC01MjgsMTAgKzUzNSwxMiBAQCBzdHJ1Y3QgZGlz Y2FyZF9jbWRfY29udHJvbCB7Cj4gIAl1bnNpZ25lZCBpbnQgbWF4X29yZGVyZWRfZGlzY2FyZDsJ LyogbWF4aW11bSBkaXNjYXJkIGdyYW51bGFyaXR5IGlzc3VlZCBieSBsYmEgb3JkZXIgKi8KPiAg CXVuc2lnbmVkIGludCBkaXNjYXJkX2lvX2F3YXJlOwkJLyogaW9fYXdhcmUgcG9saWN5ICovCj4g IAl1bnNpZ25lZCBpbnQgdW5kaXNjYXJkX2Jsa3M7CQkvKiAjIG9mIHVuZGlzY2FyZCBibG9ja3Mg Ki8KPiArCXVuc2lnbmVkIGludCB1bmRpc2NhcmRfYmxrc19yYW5nZVtESVNDQVJEX1JBTkdFX05S XTsJLyogb2YgdW5kaXNjYXJkIGJsb2NrcyBieSByYW5nZSAqLwo+ICAJdW5zaWduZWQgaW50IG5l eHRfcG9zOwkJCS8qIG5leHQgZGlzY2FyZCBwb3NpdGlvbiAqLwo+ICAJYXRvbWljX3QgaXNzdWVk X2Rpc2NhcmQ7CQkvKiAjIG9mIGlzc3VlZCBkaXNjYXJkICovCj4gIAlhdG9taWNfdCBxdWV1ZWRf ZGlzY2FyZDsJCS8qICMgb2YgcXVldWVkIGRpc2NhcmQgKi8KPiAgCWF0b21pY190IGRpc2NhcmRf Y21kX2NudDsJCS8qICMgb2YgY2FjaGVkIGNtZCBjb3VudCAqLwo+ICsJYXRvbWljX3QgZGlzY2Fy ZF9jbWRfcmFuZ2VbRElTQ0FSRF9SQU5HRV9OUl07CS8qIG9mIGNhY2hlZCBjbWQgYnkgcmFuZ2Ug Ki8KPiAgCXN0cnVjdCByYl9yb290X2NhY2hlZCByb290OwkJLyogcm9vdCBvZiBkaXNjYXJkIHJi LXRyZWUgKi8KPiAgCWJvb2wgcmJ0cmVlX2NoZWNrOwkJCS8qIGNvbmZpZyBmb3IgY29uc2lzdGVu Y2UgY2hlY2sgKi8KPiAgCWJvb2wgZGlzY2FyZF93YWtlOwkJCS8qIHRvIHdha2UgdXAgZGlzY2Fy ZCB0aHJlYWQgKi8KPiBkaWZmIC0tZ2l0IGEvZnMvZjJmcy9zZWdtZW50LmMgYi9mcy9mMmZzL3Nl Z21lbnQuYwo+IGluZGV4IDZhOTdmZTc2NzEyYi4uNDZiY2IyNzI4MWVkIDEwMDY0NAo+IC0tLSBh L2ZzL2YyZnMvc2VnbWVudC5jCj4gKysrIGIvZnMvZjJmcy9zZWdtZW50LmMKPiBAQCAtOTYzLDYg Kzk2MywyNyBAQCBzdGF0aWMgdW5zaWduZWQgaW50IGdldF9mcmVlX3NlZ21lbnQoc3RydWN0IGYy ZnNfc2JfaW5mbyAqc2JpKQo+ICAJcmV0dXJuIE5VTExfU0VHTk87Cj4gIH0KPiAgCj4gK3N0YXRp YyB2b2lkIF9fc3RhdF9kaXNjYXJkX3JhbmdlKHN0cnVjdCBkaXNjYXJkX2NtZF9jb250cm9sICpk Y2MsCj4gKwkJCQlibG9ja190IGxlbiwgYm9vbCBpbmMpCj4gK3sKPiArCWVudW0gZGlzY2FyZF9y YW5nZSByYW5nZTsKPiArCj4gKwlpZiAobGVuIDwgREVGQVVMVF9ESVNDQVJEX0dSQU5VTEFSSVRZ KQo+ICsJCXJhbmdlID0gRElTQ0FSRF9SQU5HRV9TTUFMTDsKPiArCWVsc2UgaWYgKGxlbiA8IE1B WF9QTElTVF9OVU0pCj4gKwkJcmFuZ2UgPSBESVNDQVJEX1JBTkdFX01JRDsKPiArCWVsc2UKPiAr CQlyYW5nZSA9IERJU0NBUkRfUkFOR0VfTEFSR0U7Cj4gKwo+ICsJaWYgKGluYykgewo+ICsJCWRj Yy0+dW5kaXNjYXJkX2Jsa3NfcmFuZ2VbcmFuZ2VdICs9IGxlbjsKPiArCQlhdG9taWNfaW5jKCZk Y2MtPmRpc2NhcmRfY21kX3JhbmdlW3JhbmdlXSk7Cj4gKwl9IGVsc2Ugewo+ICsJCWRjYy0+dW5k aXNjYXJkX2Jsa3NfcmFuZ2VbcmFuZ2VdIC09IGxlbjsKPiArCQlhdG9taWNfZGVjKCZkY2MtPmRp c2NhcmRfY21kX3JhbmdlW3JhbmdlXSk7Cj4gKwl9Cj4gK30KPiArCj4gIHN0YXRpYyBzdHJ1Y3Qg ZGlzY2FyZF9jbWQgKl9fY3JlYXRlX2Rpc2NhcmRfY21kKHN0cnVjdCBmMmZzX3NiX2luZm8gKnNi aSwKPiAgCQlzdHJ1Y3QgYmxvY2tfZGV2aWNlICpiZGV2LCBibG9ja190IGxzdGFydCwKPiAgCQli bG9ja190IHN0YXJ0LCBibG9ja190IGxlbikKPiBAQCAtOTkxLDcgKzEwMTIsNyBAQCBzdGF0aWMg c3RydWN0IGRpc2NhcmRfY21kICpfX2NyZWF0ZV9kaXNjYXJkX2NtZChzdHJ1Y3QgZjJmc19zYl9p bmZvICpzYmksCj4gIAlkYy0+YmlvX3JlZiA9IDA7Cj4gIAlhdG9taWNfaW5jKCZkY2MtPmRpc2Nh cmRfY21kX2NudCk7Cj4gIAlkY2MtPnVuZGlzY2FyZF9ibGtzICs9IGxlbjsKPiAtCj4gKwlfX3N0 YXRfZGlzY2FyZF9yYW5nZShkY2MsIGxlbiwgdHJ1ZSk7Cj4gIAlyZXR1cm4gZGM7Cj4gIH0KPiAg Cj4gQEAgLTExMDksNyArMTEzMCw3IEBAIHN0YXRpYyB2b2lkIF9fZGV0YWNoX2Rpc2NhcmRfY21k KHN0cnVjdCBkaXNjYXJkX2NtZF9jb250cm9sICpkY2MsCj4gIAlsaXN0X2RlbCgmZGMtPmxpc3Qp Owo+ICAJcmJfZXJhc2VfY2FjaGVkKCZkYy0+cmJfbm9kZSwgJmRjYy0+cm9vdCk7Cj4gIAlkY2Mt PnVuZGlzY2FyZF9ibGtzIC09IGRjLT5kaS5sZW47Cj4gLQo+ICsJX19zdGF0X2Rpc2NhcmRfcmFu Z2UoZGNjLCBkYy0+ZGkubGVuLCBmYWxzZSk7Cj4gIAlrbWVtX2NhY2hlX2ZyZWUoZGlzY2FyZF9j bWRfc2xhYiwgZGMpOwo+ICAKPiAgCWF0b21pY19kZWMoJmRjYy0+ZGlzY2FyZF9jbWRfY250KTsK PiBAQCAtMTM4Miw2ICsxNDAzLDggQEAgc3RhdGljIGludCBfX3N1Ym1pdF9kaXNjYXJkX2NtZChz dHJ1Y3QgZjJmc19zYl9pbmZvICpzYmksCj4gIAl9Cj4gIAo+ICAJaWYgKGxlbikgewo+ICsJCV9f c3RhdF9kaXNjYXJkX3JhbmdlKGRjYywgKGRjLT5kaS5sZW4gKyBsZW4pLCBmYWxzZSk7Cj4gKwkJ X19zdGF0X2Rpc2NhcmRfcmFuZ2UoZGNjLCBkYy0+ZGkubGVuLCB0cnVlKTsKPiAgCQlkY2MtPnVu ZGlzY2FyZF9ibGtzIC09IGxlbjsKPiAgCQlfX3VwZGF0ZV9kaXNjYXJkX3RyZWVfcmFuZ2Uoc2Jp LCBiZGV2LCBsc3RhcnQsIHN0YXJ0LCBsZW4pOwo+ICAJfQo+IEBAIC0xNDM5LDEwICsxNDYyLDEy IEBAIHN0YXRpYyB2b2lkIF9fcHVuY2hfZGlzY2FyZF9jbWQoc3RydWN0IGYyZnNfc2JfaW5mbyAq c2JpLAo+ICAJfQo+ICAKPiAgCWRjYy0+dW5kaXNjYXJkX2Jsa3MgLT0gZGkubGVuOwo+ICsJX19z dGF0X2Rpc2NhcmRfcmFuZ2UoZGNjLCBkaS5sZW4sIGZhbHNlKTsKPiAgCj4gIAlpZiAoYmxrYWRk ciA+IGRpLmxzdGFydCkgewo+ICAJCWRjLT5kaS5sZW4gPSBibGthZGRyIC0gZGMtPmRpLmxzdGFy dDsKPiAgCQlkY2MtPnVuZGlzY2FyZF9ibGtzICs9IGRjLT5kaS5sZW47Cj4gKwkJX19zdGF0X2Rp c2NhcmRfcmFuZ2UoZGNjLCBkYy0+ZGkubGVuLCB0cnVlKTsKPiAgCQlfX3JlbG9jYXRlX2Rpc2Nh cmRfY21kKGRjYywgZGMpOwo+ICAJCW1vZGlmaWVkID0gdHJ1ZTsKPiAgCX0KPiBAQCAtMTQ1Nyw2 ICsxNDgyLDcgQEAgc3RhdGljIHZvaWQgX19wdW5jaF9kaXNjYXJkX2NtZChzdHJ1Y3QgZjJmc19z Yl9pbmZvICpzYmksCj4gIAkJCWRjLT5kaS5sZW4tLTsKPiAgCQkJZGMtPmRpLnN0YXJ0Kys7Cj4g IAkJCWRjYy0+dW5kaXNjYXJkX2Jsa3MgKz0gZGMtPmRpLmxlbjsKPiArCQkJX19zdGF0X2Rpc2Nh cmRfcmFuZ2UoZGNjLCBkYy0+ZGkubGVuLCB0cnVlKTsKPiAgCQkJX19yZWxvY2F0ZV9kaXNjYXJk X2NtZChkY2MsIGRjKTsKPiAgCQl9Cj4gIAl9Cj4gQEAgLTE1MTMsOCArMTUzOSwxMCBAQCBzdGF0 aWMgdm9pZCBfX3VwZGF0ZV9kaXNjYXJkX3RyZWVfcmFuZ2Uoc3RydWN0IGYyZnNfc2JfaW5mbyAq c2JpLAo+ICAJCQlwcmV2X2RjLT5iZGV2ID09IGJkZXYgJiYKPiAgCQkJX19pc19kaXNjYXJkX2Jh Y2tfbWVyZ2VhYmxlKCZkaSwgJnByZXZfZGMtPmRpLAo+ICAJCQkJCQkJbWF4X2Rpc2NhcmRfYmxv Y2tzKSkgewo+ICsJCQlfX3N0YXRfZGlzY2FyZF9yYW5nZShkY2MsIHByZXZfZGMtPmRpLmxlbiwg ZmFsc2UpOwo+ICAJCQlwcmV2X2RjLT5kaS5sZW4gKz0gZGkubGVuOwo+ICAJCQlkY2MtPnVuZGlz Y2FyZF9ibGtzICs9IGRpLmxlbjsKPiArCQkJX19zdGF0X2Rpc2NhcmRfcmFuZ2UoZGNjLCBwcmV2 X2RjLT5kaS5sZW4sIHRydWUpOwo+ICAJCQlfX3JlbG9jYXRlX2Rpc2NhcmRfY21kKGRjYywgcHJl dl9kYyk7Cj4gIAkJCWRpID0gcHJldl9kYy0+ZGk7Cj4gIAkJCXRkYyA9IHByZXZfZGM7Cj4gQEAg LTE1MjUsMTAgKzE1NTMsMTIgQEAgc3RhdGljIHZvaWQgX191cGRhdGVfZGlzY2FyZF90cmVlX3Jh bmdlKHN0cnVjdCBmMmZzX3NiX2luZm8gKnNiaSwKPiAgCQkJbmV4dF9kYy0+YmRldiA9PSBiZGV2 ICYmCj4gIAkJCV9faXNfZGlzY2FyZF9mcm9udF9tZXJnZWFibGUoJmRpLCAmbmV4dF9kYy0+ZGks Cj4gIAkJCQkJCQltYXhfZGlzY2FyZF9ibG9ja3MpKSB7Cj4gKwkJCV9fc3RhdF9kaXNjYXJkX3Jh bmdlKGRjYywgbmV4dF9kYy0+ZGkubGVuLCBmYWxzZSk7Cj4gIAkJCW5leHRfZGMtPmRpLmxzdGFy dCA9IGRpLmxzdGFydDsKPiAgCQkJbmV4dF9kYy0+ZGkubGVuICs9IGRpLmxlbjsKPiAgCQkJbmV4 dF9kYy0+ZGkuc3RhcnQgPSBkaS5zdGFydDsKPiAgCQkJZGNjLT51bmRpc2NhcmRfYmxrcyArPSBk aS5sZW47Cj4gKwkJCV9fc3RhdF9kaXNjYXJkX3JhbmdlKGRjYywgbmV4dF9kYy0+ZGkubGVuLCB0 cnVlKTsKPiAgCQkJX19yZWxvY2F0ZV9kaXNjYXJkX2NtZChkY2MsIG5leHRfZGMpOwo+ICAJCQlp ZiAodGRjKQo+ICAJCQkJX19yZW1vdmVfZGlzY2FyZF9jbWQoc2JpLCB0ZGMpOwo+IEBAIC0yMzMw LDYgKzIzNjAsOCBAQCBzdGF0aWMgaW50IGNyZWF0ZV9kaXNjYXJkX2NtZF9jb250cm9sKHN0cnVj dCBmMmZzX3NiX2luZm8gKnNiaSkKPiAgCWF0b21pY19zZXQoJmRjYy0+aXNzdWVkX2Rpc2NhcmQs IDApOwo+ICAJYXRvbWljX3NldCgmZGNjLT5xdWV1ZWRfZGlzY2FyZCwgMCk7Cj4gIAlhdG9taWNf c2V0KCZkY2MtPmRpc2NhcmRfY21kX2NudCwgMCk7Cj4gKwlmb3IgKGkgPSAwOyBpIDwgRElTQ0FS RF9SQU5HRV9OUjsgaSsrKQo+ICsJCWF0b21pY19zZXQoJmRjYy0+ZGlzY2FyZF9jbWRfcmFuZ2Vb aV0sIDApOwo+ICAJZGNjLT5ucl9kaXNjYXJkcyA9IDA7Cj4gIAlkY2MtPm1heF9kaXNjYXJkcyA9 IFNFR1NfVE9fQkxLUyhzYmksIE1BSU5fU0VHUyhzYmkpKTsKPiAgCWRjYy0+bWF4X2Rpc2NhcmRf cmVxdWVzdCA9IERFRl9NQVhfRElTQ0FSRF9SRVFVRVNUOwo+IEBAIC0yMzM4LDYgKzIzNzAsOCBA QCBzdGF0aWMgaW50IGNyZWF0ZV9kaXNjYXJkX2NtZF9jb250cm9sKHN0cnVjdCBmMmZzX3NiX2lu Zm8gKnNiaSkKPiAgCWRjYy0+bWF4X2Rpc2NhcmRfaXNzdWVfdGltZSA9IERFRl9NQVhfRElTQ0FS RF9JU1NVRV9USU1FOwo+ICAJZGNjLT5kaXNjYXJkX3VyZ2VudF91dGlsID0gREVGX0RJU0NBUkRf VVJHRU5UX1VUSUw7Cj4gIAlkY2MtPnVuZGlzY2FyZF9ibGtzID0gMDsKPiArCWZvciAoaSA9IDA7 IGkgPCBESVNDQVJEX1JBTkdFX05SOyBpKyspCj4gKwkJZGNjLT51bmRpc2NhcmRfYmxrc19yYW5n ZVtpXSA9IDA7Cj4gIAlkY2MtPm5leHRfcG9zID0gMDsKPiAgCWRjYy0+cm9vdCA9IFJCX1JPT1Rf Q0FDSEVEOwo+ICAJZGNjLT5yYnRyZWVfY2hlY2sgPSBmYWxzZTsKPiBkaWZmIC0tZ2l0IGEvZnMv ZjJmcy9zeXNmcy5jIGIvZnMvZjJmcy9zeXNmcy5jCj4gaW5kZXggNWZiZmRjOTZlNTAyLi40MGIz NmQ1OTgwMmMgMTAwNjQ0Cj4gLS0tIGEvZnMvZjJmcy9zeXNmcy5jCj4gKysrIGIvZnMvZjJmcy9z eXNmcy5jCj4gQEAgLTE1Miw2ICsxNTIsMTggQEAgc3RhdGljIHNzaXplX3QgcGVuZGluZ19kaXNj YXJkX3Nob3coc3RydWN0IGYyZnNfYXR0ciAqYSwKPiAgCQkJCSZTTV9JKHNiaSktPmRjY19pbmZv LT5kaXNjYXJkX2NtZF9jbnQpKTsKPiAgfQo+ICAKPiArc3RhdGljIHNzaXplX3QgcGVuZGluZ19k aXNjYXJkX3JhbmdlX3Nob3coc3RydWN0IGYyZnNfYXR0ciAqYSwKPiArCQlzdHJ1Y3QgZjJmc19z Yl9pbmZvICpzYmksIGNoYXIgKmJ1ZikKPiArewo+ICsJc3RydWN0IGRpc2NhcmRfY21kX2NvbnRy b2wgKmRjYyA9IFNNX0koc2JpKS0+ZGNjX2luZm87Cj4gKwlpZiAoIWRjYykKPiArCQlyZXR1cm4g LUVJTlZBTDsKPiArCXJldHVybiBzeXNmc19lbWl0KGJ1ZiwgInNtYWxsOiVsbHUsIG1pZDolbGx1 LCBsYXJnZTolbGx1XG4iLAo+ICsJCSh1bnNpZ25lZCBsb25nIGxvbmcpYXRvbWljX3JlYWQoJmRj Yy0+ZGlzY2FyZF9jbWRfcmFuZ2VbRElTQ0FSRF9SQU5HRV9TTUFMTF0pLAo+ICsJCSh1bnNpZ25l ZCBsb25nIGxvbmcpYXRvbWljX3JlYWQoJmRjYy0+ZGlzY2FyZF9jbWRfcmFuZ2VbRElTQ0FSRF9S QU5HRV9NSURdKSwKPiArCQkodW5zaWduZWQgbG9uZyBsb25nKWF0b21pY19yZWFkKCZkY2MtPmRp c2NhcmRfY21kX3JhbmdlW0RJU0NBUkRfUkFOR0VfTEFSR0VdKSk7Cj4gK30KPiArCj4gIHN0YXRp YyBzc2l6ZV90IGlzc3VlZF9kaXNjYXJkX3Nob3coc3RydWN0IGYyZnNfYXR0ciAqYSwKPiAgCQlz dHJ1Y3QgZjJmc19zYl9pbmZvICpzYmksIGNoYXIgKmJ1ZikKPiAgewo+IEBAIC0xNzksNiArMTkx LDE3IEBAIHN0YXRpYyBzc2l6ZV90IHVuZGlzY2FyZF9ibGtzX3Nob3coc3RydWN0IGYyZnNfYXR0 ciAqYSwKPiAgCQkJCVNNX0koc2JpKS0+ZGNjX2luZm8tPnVuZGlzY2FyZF9ibGtzKTsKPiAgfQo+ ICAKPiArc3RhdGljIHNzaXplX3QgdW5kaXNjYXJkX2Jsa3NfcmFuZ2Vfc2hvdyhzdHJ1Y3QgZjJm c19hdHRyICphLAo+ICsJCXN0cnVjdCBmMmZzX3NiX2luZm8gKnNiaSwgY2hhciAqYnVmKQo+ICt7 Cj4gKwlpZiAoIVNNX0koc2JpKS0+ZGNjX2luZm8pCj4gKwkJcmV0dXJuIC1FSU5WQUw7Cj4gKwly ZXR1cm4gc3lzZnNfZW1pdChidWYsICJzbWFsbDogJXUsIG1pZDogJXUsIGxhcmdlOiAldVxuIiwK PiArCQkJCVNNX0koc2JpKS0+ZGNjX2luZm8tPnVuZGlzY2FyZF9ibGtzX3JhbmdlW0RJU0NBUkRf UkFOR0VfU01BTExdLAo+ICsJCQkJU01fSShzYmkpLT5kY2NfaW5mby0+dW5kaXNjYXJkX2Jsa3Nf cmFuZ2VbRElTQ0FSRF9SQU5HRV9NSURdLAo+ICsJCQkJU01fSShzYmkpLT5kY2NfaW5mby0+dW5k aXNjYXJkX2Jsa3NfcmFuZ2VbRElTQ0FSRF9SQU5HRV9MQVJHRV0pOwo+ICt9Cj4gKwo+ICBzdGF0 aWMgc3NpemVfdCBhdGdjX2VuYWJsZWRfc2hvdyhzdHJ1Y3QgZjJmc19hdHRyICphLAo+ICAJCXN0 cnVjdCBmMmZzX3NiX2luZm8gKnNiaSwgY2hhciAqYnVmKQo+ICB7Cj4gQEAgLTE1NjIsNiArMTU4 NSw4IEBAIEYyRlNfR0VORVJBTF9ST19BVFRSKGNwX3N0YXR1cyk7Cj4gIEYyRlNfR0VORVJBTF9S T19BVFRSKGlzc3VlZF9kaXNjYXJkKTsKPiAgRjJGU19HRU5FUkFMX1JPX0FUVFIocXVldWVkX2Rp c2NhcmQpOwo+ICBGMkZTX0dFTkVSQUxfUk9fQVRUUih1bmRpc2NhcmRfYmxrcyk7Cj4gK0YyRlNf R0VORVJBTF9ST19BVFRSKHVuZGlzY2FyZF9ibGtzX3JhbmdlKTsKPiArRjJGU19HRU5FUkFMX1JP X0FUVFIocGVuZGluZ19kaXNjYXJkX3JhbmdlKTsKPiAgCj4gIHN0YXRpYyBzdHJ1Y3QgYXR0cmli dXRlICpmMmZzX3N0YXRfYXR0cnNbXSA9IHsKPiAgCUFUVFJfTElTVChzYl9zdGF0dXMpLAo+IEBA IC0xNTY5LDYgKzE1OTQsOCBAQCBzdGF0aWMgc3RydWN0IGF0dHJpYnV0ZSAqZjJmc19zdGF0X2F0 dHJzW10gPSB7Cj4gIAlBVFRSX0xJU1QoaXNzdWVkX2Rpc2NhcmQpLAo+ICAJQVRUUl9MSVNUKHF1 ZXVlZF9kaXNjYXJkKSwKPiAgCUFUVFJfTElTVCh1bmRpc2NhcmRfYmxrcyksCj4gKwlBVFRSX0xJ U1QodW5kaXNjYXJkX2Jsa3NfcmFuZ2UpLAo+ICsJQVRUUl9MSVNUKHBlbmRpbmdfZGlzY2FyZF9y YW5nZSksCj4gIAlOVUxMLAo+ICB9Owo+ICBBVFRSSUJVVEVfR1JPVVBTKGYyZnNfc3RhdCk7CgoK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkxpbnV4LWYy ZnMtZGV2ZWwgbWFpbGluZyBsaXN0CkxpbnV4LWYyZnMtZGV2ZWxAbGlzdHMuc291cmNlZm9yZ2Uu bmV0Cmh0dHBzOi8vbGlzdHMuc291cmNlZm9yZ2UubmV0L2xpc3RzL2xpc3RpbmZvL2xpbnV4LWYy ZnMtZGV2ZWwK