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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 654ABE7716C for ; Thu, 5 Dec 2024 15:19:17 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0166C6B00B1; Thu, 5 Dec 2024 10:19:09 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id C829E6B00AB; Thu, 5 Dec 2024 10:19:08 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3CEF56B00AA; Thu, 5 Dec 2024 10:19:08 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 626536B0254 for ; Mon, 9 Sep 2024 20:17:32 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id DC675161283 for ; Tue, 10 Sep 2024 00:17:31 +0000 (UTC) X-FDA: 82546914702.17.FAAA5C4 Received: from m16.mail.163.com (m16.mail.163.com [220.197.31.2]) by imf12.hostedemail.com (Postfix) with ESMTP id 9DB9F40005 for ; Tue, 10 Sep 2024 00:17:28 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=163.com header.s=s110527 header.b="l hWKZ8u"; dmarc=pass (policy=none) header.from=163.com; spf=pass (imf12.hostedemail.com: domain of ice_yangxiao@163.com designates 220.197.31.2 as permitted sender) smtp.mailfrom=ice_yangxiao@163.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1725927336; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=aZgkIqlZJojdB2AaLwv4UPem7CJ6dowqN8grFaiUjC4=; b=CLZCnqCRKcomOx0eewFtf8MeCiKwajyLK/MGj9nayZWo3kN83zGDXGBoTT8y8eDINhKczS osrXgd3+x/Z0qvYQAcLK+RbgWTZVoT608rhc6ejf9SeaGS2VJRw9kdckrp7cf9wAEuETPu +rcoP9oKzZl3X90+upfESw27CJgY2Ks= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1725927336; a=rsa-sha256; cv=none; b=hdshqRMvjyQ5GKBFBNvw6qhORqclJUwyqtjm41vWrgd9tzgskaOoS2InZnio0LonME+wvZ As7KYQ6AK5ZvYba6Mhjzfujry88l/BFEvs0EiPmCy7Q8KIl69V0mZfbMKYKQi079pHu0JM x8DqIlPJ/yz3VaM+enSe4Va5UjTr8sE= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=163.com header.s=s110527 header.b="l hWKZ8u"; dmarc=pass (policy=none) header.from=163.com; spf=pass (imf12.hostedemail.com: domain of ice_yangxiao@163.com designates 220.197.31.2 as permitted sender) smtp.mailfrom=ice_yangxiao@163.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=Date:From:Subject:Content-Type:MIME-Version: Message-ID; bh=aZgkIqlZJojdB2AaLwv4UPem7CJ6dowqN8grFaiUjC4=; b=l hWKZ8us4KaOY9j5CBhrNLdUmmMh8oDMaiI15LpPi9xrBtA4emylhHIxzUvAk0+HA KHiyI9fEbigr/T4pfoKIK1vGTbRPoUr/FoaGq+qwM+qoQNRNO4G4g2AE8u54OlJk NYcf1G9Lj/MXi4tzXcAURzEwjTHls0VKn7Cg3gF3pM= Received: from ice_yangxiao$163.com ( [160.86.227.247] ) by ajax-webmail-wmsvr-40-139 (Coremail) ; Tue, 10 Sep 2024 08:17:13 +0800 (CST) X-Originating-IP: [160.86.227.247] Date: Tue, 10 Sep 2024 08:17:13 +0800 (CST) From: =?GBK?B?0e7P/g==?= To: "Liam R. Howlett" Cc: lorenzo.stoakes@oracle.com, akpm@linux-foundation.org, vbabka@suse.cz, linux-mm@kvack.org, linux-kernel@vger.kernel.org, ltp@lists.linux.it, oliver.sang@intel.com Subject: Re:Re: [PATCH v2] mm/vma: Return the exact errno in vms_gather_munmap_vmas() X-Priority: 3 X-Mailer: Coremail Webmail Server Version XT5.0.14 build 20240801(9da12a7b) Copyright (c) 2002-2024 www.mailtech.cn 163com In-Reply-To: References: <20240909125621.1994-1-ice_yangxiao@163.com> X-NTES-SC: AL_Qu2ZB/WZuEwo5SeRYOkfmkwaj+w9XcqwuPsm24BUOpp+jBHo4CcPZkdAOnHZ98CDLi+zmxuUTB5g1+BUeZR7docnHpFs2+7yF3SGE55UFMVE7Q== Content-Type: multipart/alternative; boundary="----=_Part_4131_853267544.1725927433805" MIME-Version: 1.0 Message-ID: <17a3c672.469.191d94aa64e.Coremail.ice_yangxiao@163.com> X-Coremail-Locale: zh_CN X-CM-TRANSID:_____wD3X4YKkN9mre5LAA--.1556W X-CM-SenderInfo: 5lfhs5xdqj5xldr6il2tof0z/1tbiMxZVXmXAnvvpZgAGsn X-Coremail-Antispam: 1U5529EdanIXcx71UUUUU7vcSsGvfC2KfnxnUU== X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 9DB9F40005 X-Stat-Signature: qms48zquk9y96xkqjwf65sgthasxsg7t X-Rspam-User: X-HE-Tag: 1725927448-687452 X-HE-Meta: U2FsdGVkX1+dNNa6dzU/7eoBAAvOrvkYJI91vAs/7qPvXUZO9Y1PVtPzH/9I1473hNJm8h5uwWGLNXxxotwVelABI7xFBdi00Gf93UBVNzapYYClZGUmZZpfysH6rxWDQCRGGc0418+nEXL2YO0i05nkBiIbSOA2aC3oGbnELlPkWv4yGLJf/VhnO3mCwYlJjUl2TdnFFb+QfCkqXQY8z9AEJm1rVJEb0IezjfuLFgDmfVmsfLJoiPzvu1W8uZ9s2btQXb1K/ffasdOksFvNLIS92HcL1DOIpQQJGVdMec7E2Eo3akAFtHJILumvm1POyUxJsMJ8DB9b/G1l+P8Wbq82ClVaHo3m0E2BWKDvECrJVAbzXtDMIV618h0n+KrhAhP39Qfk3mLR84BMZ1mJBhhQiScv9SrgKAUXkVhJb0+QUL9E9Oi4GX1UixPKDKjKfQ03m/K+y0VSHfoCPAFFEjkXjDSM1SFmFtORjHxF5sOcV37IdHpcgLPINu9gE7U/1itPUypT9F94ScfG8O3qABwGdmQENcMx72iXUzW5DApRXswjDeyijqPsJhaoFhI4/+Gvw7bgUr0XHHYpS8lxZoSF8WtbA6ZIHZBFiGZL+WcziUHVNpKY5gaXk8eJ5gfRzI7U6o/5i7w9DQxP+Q33rJDZMtXoWwuyKlVWpIUxF+8WQSlZBbCzS4a2GnAOG9gBgEkoUoMzaT1HbsHf+cKANsn6XpiRGk5vqn3N+HfFx4BtW6hcSsN83yqUByacojcFqEiIxGh49BSrU+y+NIfXkI8bqVAIRTcBtSSHK0WS6RaHzV7QomsDppw4/fUG8KLf5o9J7w0Fy9M8ws81Sd8W797DpZvxLQMcS5HYzwKJN1vG7QHz6EFaBIT2Ar6pxzgtIOMwPA1q24zhuvMWEdz32vt2swAAZ9cTq8gBFqydeJmO3YAEIH5zyHDcvFPDxI0B283n18W70XgPPWrOGzt olMGlWGB GsgGtJCtsZYJYK8/aen4ujth3Dk7VSwHzesLz/CmptDb4uS/ZOl78NOrNSiAShet4lKxVgDIOfKR6nwuK7ro6TGf748MX3UxWlQxlXKlFFXgkzAUdyBSxSnl0E0wqO+fDo5obK4uhIi7I9JVXhiP/5r6PQ+N3H8vKR9FeEuVRTL4SZx2yovWO+o8KSZlO58YLqJNwAr/1r72Z+xskCXnS896yjz+qths5pcH1pTctOy9BICbnI02G8pi46ZW2jNd6bSUt1RzTlPcvof0uGQwrYVNitH0fvfpSTdgngmHNJrdyjDmzfUjl78EW8rAvzvxyFrqmF+m4UgF6ivjiUxQ9kKW/C2TJyVAnMkjCtDlWKHbw3wcYrrPuO6HhZofpC5+uUEjUhxg4peG83WfcKxe9RnLZ5Fa12PL5N5fUAuyCvb899UYp7ebIknf6p85VMVQmWvYOuzGyv4UpE3UeSZwtcRIOgbtdulZ4Mrgjl8xUZLDbqS4ulo/pG8lTLcERFvjDmw83Zi93EmC8Gj/vJIglqoGZaMFVj8Kx3mLDE+rHluFFAFJlc7FOfmwcsQ+9B55YIvhOgjAo7aqHi9KBoomYpi3J8yDSj9/585AMBFK122SoQ0RR/teJTBRqsVURDKC+Q2l3qTol8LeAdf+gX3mfyLwWVbRhGE9b0BzBwtdBN8bdXMbLoQul3cIjpn20DuLBIKgrBy8CNoSkaJ9jGoDA2U2WECgxQGAlptcfa30yeqJjfmgwvgPvt7Elqxq8lmkPj8UQDk6pIrBg6gL4fdt0fn8IyvpZTMDf2A0pEYDwYGsE1YquJ0/OXI/w/DnM/EPMb2GV X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: ------=_Part_4131_853267544.1725927433805 Content-Type: text/plain; charset=GBK Content-Transfer-Encoding: base64 CkF0IDIwMjQtMDktMDkgMjI6MDc6MDksICJMaWFtIFIuIEhvd2xldHQiIDxMaWFtLkhvd2xldHRA b3JhY2xlLmNvbT4gd3JvdGU6Cj4qIFhpYW8gWWFuZyA8aWNlX3lhbmd4aWFvQDE2My5jb20+IFsy NDA5MDkgMDg6NTZdOgo+PiBfX3NwbGl0X3ZtYSgpIGFuZCBtYXNfc3RvcmVfZ2ZwKCkgcmV0dXJu cyBzZXZlcmFsIHR5cGVzIG9mIGVycm5vIG9uCj4+IGZhaWx1cmUgc28gZG9uJ3QgaWdub3JlIHRo ZW0gaW4gdm1zX2dhdGhlcl9tdW5tYXBfdm1hcygpLiBGb3IgZXhhbXBsZSwKPj4gX19zcGxpdF92 bWEoKSByZXR1cm5zIC1FSU5WQUwgd2hlbiBhbiB1bmFsaWduZWQgaHVnZSBwYWdlIGlzIHVubWFw cGVkLgo+PiBUaGlzIGlzc3VlIGlzIHJlcHJvZHVjZWQgYnkgbHRwIG1lbWZkX2NyZWF0ZTAzIHRl c3QuCj4+IAo+PiBEb24ndCBpbml0aWFsaXNlIHRoZSBlcnJvciB2YXJpYWJsZSBhbmQgYXNzaWdu IGl0IHdoZW4gYSBmYWlsdXJlCj4+IGFjdHVhbGx5IG9jY3Vycy4KPj4gCj4+IEZpeGVzOiA2ODk4 YzkwMzliYzggKCJtbS92bWE6IGV4dHJhY3QgdGhlIGdhdGhlcmluZyBvZiB2bWFzIGZyb20gZG9f dm1pX2FsaWduX211bm1hcCgpIikKPj4gU2lnbmVkLW9mZi1ieTogWGlhbyBZYW5nIDxpY2VfeWFu Z3hpYW9AMTYzLmNvbT4KPj4gU3VnZ2VzdGVkLWJ5OiBMb3JlbnpvIFN0b2FrZXMgPGxvcmVuem8u c3RvYWtlc0BvcmFjbGUuY29tPgo+PiBSZXBvcnRlZC1ieToga2VybmVsIHRlc3Qgcm9ib3QgPG9s aXZlci5zYW5nQGludGVsLmNvbT4KPj4gQ2xvc2VzOiBodHRwczovL2xvcmUua2VybmVsLm9yZy9v ZS1sa3AvMjAyNDA5MDgxNTM2LmQyODNhMGZiLW9saXZlci5zYW5nQGludGVsLmNvbQo+PiAtLS0K Pj4gIG1tL3ZtYS5jIHwgMjEgKysrKysrKysrKysrKy0tLS0tLS0tCj4+ICAxIGZpbGUgY2hhbmdl ZCwgMTMgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKPj4gCj4+IGRpZmYgLS1naXQgYS9t bS92bWEuYyBiL21tL3ZtYS5jCj4+IGluZGV4IDhkMTY4NmZjOGQ1YS4uZGM1MzU1ZDk5YTE4IDEw MDY0NAo+PiAtLS0gYS9tbS92bWEuYwo+PiArKysgYi9tbS92bWEuYwo+PiBAQCAtMTE3MSwxMyAr MTE3MSwxMyBAQCB2b2lkIHZtc19jb21wbGV0ZV9tdW5tYXBfdm1hcyhzdHJ1Y3Qgdm1hX211bm1h cF9zdHJ1Y3QgKnZtcywKPj4gICAqIEB2bXM6IFRoZSB2bWEgbXVubWFwIHN0cnVjdAo+PiAgICog QG1hc19kZXRhY2g6IFRoZSBtYXBsZSBzdGF0ZSB0cmFja2luZyB0aGUgZGV0YWNoZWQgdHJlZQo+ PiAgICoKPj4gLSAqIFJldHVybjogMCBvbiBzdWNjZXNzLCAtRVBFUk0gb24gbXNlYWwgdm1hcywg LUVOT01FTSBvdGhlcndpc2UKPj4gKyAqIFJldHVybjogMCBvbiBzdWNjZXNzLCBlcnJvciBvdGhl cndpc2UKPj4gICAqLwo+PiAgaW50IHZtc19nYXRoZXJfbXVubWFwX3ZtYXMoc3RydWN0IHZtYV9t dW5tYXBfc3RydWN0ICp2bXMsCj4+ICAJCXN0cnVjdCBtYV9zdGF0ZSAqbWFzX2RldGFjaCkKPj4g IHsKPj4gIAlzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKm5leHQgPSBOVUxMOwo+PiAtCWludCBlcnJv ciA9IC1FTk9NRU07Cj4+ICsJaW50IGVycm9yOwo+PiAgCj4+ICAJLyoKPj4gIAkgKiBJZiB3ZSBu ZWVkIHRvIHNwbGl0IGFueSB2bWEsIGRvIGl0IG5vdyB0byBzYXZlIHBhaW4gbGF0ZXIuCj4+IEBA IC0xMTkxLDggKzExOTEsMTAgQEAgaW50IHZtc19nYXRoZXJfbXVubWFwX3ZtYXMoc3RydWN0IHZt YV9tdW5tYXBfc3RydWN0ICp2bXMsCj4+ICAJCSAqIGl0cyBsaW1pdCB0ZW1wb3JhcmlseSwgdG8g aGVscCBmcmVlIHJlc291cmNlcyBhcyBleHBlY3RlZC4KPj4gIAkJICovCj4+ICAJCWlmICh2bXMt PmVuZCA8IHZtcy0+dm1hLT52bV9lbmQgJiYKPj4gLQkJICAgIHZtcy0+dm1hLT52bV9tbS0+bWFw X2NvdW50ID49IHN5c2N0bF9tYXhfbWFwX2NvdW50KQo+PiArCQkgICAgdm1zLT52bWEtPnZtX21t LT5tYXBfY291bnQgPj0gc3lzY3RsX21heF9tYXBfY291bnQpIHsKPj4gKwkJCWVycm9yID0gLUVO T01FTTsKPj4gIAkJCWdvdG8gbWFwX2NvdW50X2V4Y2VlZGVkOwo+PiArCQl9Cj4+ICAKPj4gIAkJ LyogRG9uJ3QgYm90aGVyIHNwbGl0dGluZyB0aGUgVk1BIGlmIHdlIGNhbid0IHVubWFwIGl0IGFu eXdheSAqLwo+PiAgCQlpZiAoIWNhbl9tb2RpZnlfdm1hKHZtcy0+dm1hKSkgewo+PiBAQCAtMTIw MCw3ICsxMjAyLDggQEAgaW50IHZtc19nYXRoZXJfbXVubWFwX3ZtYXMoc3RydWN0IHZtYV9tdW5t YXBfc3RydWN0ICp2bXMsCj4+ICAJCQlnb3RvIHN0YXJ0X3NwbGl0X2ZhaWxlZDsKPj4gIAkJfQo+ PiAgCj4+IC0JCWlmIChfX3NwbGl0X3ZtYSh2bXMtPnZtaSwgdm1zLT52bWEsIHZtcy0+c3RhcnQs IDEpKQo+PiArCQllcnJvciA9IF9fc3BsaXRfdm1hKHZtcy0+dm1pLCB2bXMtPnZtYSwgdm1zLT5z dGFydCwgMSk7Cj4+ICsJCWlmIChlcnJvcikKPj4gIAkJCWdvdG8gc3RhcnRfc3BsaXRfZmFpbGVk Owo+PiAgCX0KPj4gIAl2bXMtPnByZXYgPSB2bWFfcHJldih2bXMtPnZtaSk7Cj4+IEBAIC0xMjIw LDEyICsxMjIzLDE0IEBAIGludCB2bXNfZ2F0aGVyX211bm1hcF92bWFzKHN0cnVjdCB2bWFfbXVu bWFwX3N0cnVjdCAqdm1zLAo+PiAgCQl9Cj4+ICAJCS8qIERvZXMgaXQgc3BsaXQgdGhlIGVuZD8g Ki8KPj4gIAkJaWYgKG5leHQtPnZtX2VuZCA+IHZtcy0+ZW5kKSB7Cj4+IC0JCQlpZiAoX19zcGxp dF92bWEodm1zLT52bWksIG5leHQsIHZtcy0+ZW5kLCAwKSkKPj4gKwkJCWVycm9yID0gX19zcGxp dF92bWEodm1zLT52bWksIG5leHQsIHZtcy0+ZW5kLCAwKTsKPj4gKwkJCWlmIChlcnJvcikKPj4g IAkJCQlnb3RvIGVuZF9zcGxpdF9mYWlsZWQ7Cj4+ICAJCX0KPj4gIAkJdm1hX3N0YXJ0X3dyaXRl KG5leHQpOwo+PiAgCQltYXNfc2V0KG1hc19kZXRhY2gsIHZtcy0+dm1hX2NvdW50KyspOwo+PiAt CQlpZiAobWFzX3N0b3JlX2dmcChtYXNfZGV0YWNoLCBuZXh0LCBHRlBfS0VSTkVMKSkKPj4gKwkJ ZXJyb3IgPSBtYXNfc3RvcmVfZ2ZwKG1hc19kZXRhY2gsIG5leHQsIEdGUF9LRVJORUwpOwo+PiAr CQlpZiAoZXJyb3IpCj4+ICAJCQlnb3RvIG11bm1hcF9nYXRoZXJfZmFpbGVkOwo+PiAgCj4+ICAJ CXZtYV9tYXJrX2RldGFjaGVkKG5leHQsIHRydWUpOwo+PiBAQCAtMTI1NSw4ICsxMjYwLDggQEAg aW50IHZtc19nYXRoZXJfbXVubWFwX3ZtYXMoc3RydWN0IHZtYV9tdW5tYXBfc3RydWN0ICp2bXMs Cj4+ICAJCQkgKiBzcGxpdCwgZGVzcGl0ZSB3ZSBjb3VsZC4gVGhpcyBpcyB1bmxpa2VseSBlbm91 Z2gKPj4gIAkJCSAqIGZhaWx1cmUgdGhhdCBpdCdzIG5vdCB3b3J0aCBvcHRpbWl6aW5nIGl0IGZv ci4KPj4gIAkJCSAqLwo+PiAtCQkJaWYgKHVzZXJmYXVsdGZkX3VubWFwX3ByZXAobmV4dCwgdm1z LT5zdGFydCwgdm1zLT5lbmQsCj4+IC0JCQkJCQkgICB2bXMtPnVmKSkKPj4gKwkJCWVycm9yID0g dXNlcmZhdWx0ZmRfdW5tYXBfcHJlcChuZXh0LCB2bXMtPnN0YXJ0LCB2bXMtPmVuZCwgdm1zLT51 Zik7Cj4KPlRoaXMgbGluZSBpcyB0b28gbG9uZy4KPgo+PiArCQkJaWYgKGVycm9yKQo+PiAgCQkJ CWdvdG8gdXNlcmZhdWx0ZmRfZXJyb3I7Cj4KPkdvb2QgeW91IHNhdyB0aGlzIGlzc3VlLCBJIHdh cyBnb2luZyB0byBwb2ludCBpdCBvdXQuCj4KPj4gIAkJfQo+PiAgI2lmZGVmIENPTkZJR19ERUJV R19WTV9NQVBMRV9UUkVFCj4+IC0tIAo+PiAyLjQ2LjAKPj4gCj4+IAo+Cj5CZXNpZGVzIHRoZSBs aW5lIG92ZXIgODAgY2hhcmFjdGVycywgdGhpcyBsb29rcyBnb29kIHRvIG1lIGFuZCBzaG91bGQg YmUKCj5zcXVhc2hlZCBpbnRvIG15IHNlcmllcy4KCgpIaSBMaWFtLAoKClRoYW5rcyBmb3IgeW91 ciByZXBseS4KSXQgc2VlbXMgdGhhdCB0aGUgZGVmYXVsdCBtYXhpbXVtIGxpbmUgbGVuZ3RoIGlz IDEwMCBub3csIHNob3VsZCB3ZSBzcGxpdCB0aGUgbGluZT8KSW4gYWRkaXRpb24sIGlzIGl0IGJl dHRlciB0byByZW1vdmUgdGhlIGZpeGVzIGxpbmUgYXMgeW91IG1lbnRpb25lZCBvbiBwcmV2aW91 cyBwYXRjaD8KCgoKSWYgeW91IGFncmVlIHdpdGggdGhlc2UgdHdvIGNoYW5nZXMsIEkgd2lsbCBy ZXNlbmQgdGhlIHYzIHBhdGNoIGFzIHNvb24gYXMgcG9zc2libGUuCgoKCkJlc3QgUmVnYXJkcywK WGlhbyBZYW5nCgo+Cj5UaGFua3MsCj5MaWFtCg== ------=_Part_4131_853267544.1725927433805 Content-Type: text/html; charset=GBK Content-Transfer-Encoding: base64 PGRpdiBkYXRhLW50ZXM9Im50ZXNfbWFpbF9ib2R5X3Jvb3QiIHN0eWxlPSJsaW5lLWhlaWdodDox Ljc7Y29sb3I6IzAwMDAwMDtmb250LXNpemU6MTRweDtmb250LWZhbWlseTpBcmlhbCI+PHByZT48 YnI+QXQgMjAyNC0wOS0wOSAyMjowNzowOSwgIkxpYW0gUi4gSG93bGV0dCIgJmx0O0xpYW0uSG93 bGV0dEBvcmFjbGUuY29tJmd0OyB3cm90ZToKJmd0OyogWGlhbyBZYW5nICZsdDtpY2VfeWFuZ3hp YW9AMTYzLmNvbSZndDsgWzI0MDkwOSAwODo1Nl06CiZndDsmZ3Q7IF9fc3BsaXRfdm1hKCkgYW5k IG1hc19zdG9yZV9nZnAoKSByZXR1cm5zIHNldmVyYWwgdHlwZXMgb2YgZXJybm8gb24KJmd0OyZn dDsgZmFpbHVyZSBzbyBkb24ndCBpZ25vcmUgdGhlbSBpbiB2bXNfZ2F0aGVyX211bm1hcF92bWFz KCkuIEZvciBleGFtcGxlLAomZ3Q7Jmd0OyBfX3NwbGl0X3ZtYSgpIHJldHVybnMgLUVJTlZBTCB3 aGVuIGFuIHVuYWxpZ25lZCBodWdlIHBhZ2UgaXMgdW5tYXBwZWQuCiZndDsmZ3Q7IFRoaXMgaXNz dWUgaXMgcmVwcm9kdWNlZCBieSBsdHAgbWVtZmRfY3JlYXRlMDMgdGVzdC4KJmd0OyZndDsgCiZn dDsmZ3Q7IERvbid0IGluaXRpYWxpc2UgdGhlIGVycm9yIHZhcmlhYmxlIGFuZCBhc3NpZ24gaXQg d2hlbiBhIGZhaWx1cmUKJmd0OyZndDsgYWN0dWFsbHkgb2NjdXJzLgomZ3Q7Jmd0OyAKJmd0OyZn dDsgRml4ZXM6IDY4OThjOTAzOWJjOCAoIm1tL3ZtYTogZXh0cmFjdCB0aGUgZ2F0aGVyaW5nIG9m IHZtYXMgZnJvbSBkb192bWlfYWxpZ25fbXVubWFwKCkiKQomZ3Q7Jmd0OyBTaWduZWQtb2ZmLWJ5 OiBYaWFvIFlhbmcgJmx0O2ljZV95YW5neGlhb0AxNjMuY29tJmd0OwomZ3Q7Jmd0OyBTdWdnZXN0 ZWQtYnk6IExvcmVuem8gU3RvYWtlcyAmbHQ7bG9yZW56by5zdG9ha2VzQG9yYWNsZS5jb20mZ3Q7 CiZndDsmZ3Q7IFJlcG9ydGVkLWJ5OiBrZXJuZWwgdGVzdCByb2JvdCAmbHQ7b2xpdmVyLnNhbmdA aW50ZWwuY29tJmd0OwomZ3Q7Jmd0OyBDbG9zZXM6IGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL29l LWxrcC8yMDI0MDkwODE1MzYuZDI4M2EwZmItb2xpdmVyLnNhbmdAaW50ZWwuY29tCiZndDsmZ3Q7 IC0tLQomZ3Q7Jmd0OyAgbW0vdm1hLmMgfCAyMSArKysrKysrKysrKysrLS0tLS0tLS0KJmd0OyZn dDsgIDEgZmlsZSBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQomZ3Q7 Jmd0OyAKJmd0OyZndDsgZGlmZiAtLWdpdCBhL21tL3ZtYS5jIGIvbW0vdm1hLmMKJmd0OyZndDsg aW5kZXggOGQxNjg2ZmM4ZDVhLi5kYzUzNTVkOTlhMTggMTAwNjQ0CiZndDsmZ3Q7IC0tLSBhL21t L3ZtYS5jCiZndDsmZ3Q7ICsrKyBiL21tL3ZtYS5jCiZndDsmZ3Q7IEBAIC0xMTcxLDEzICsxMTcx LDEzIEBAIHZvaWQgdm1zX2NvbXBsZXRlX211bm1hcF92bWFzKHN0cnVjdCB2bWFfbXVubWFwX3N0 cnVjdCAqdm1zLAomZ3Q7Jmd0OyAgICogQHZtczogVGhlIHZtYSBtdW5tYXAgc3RydWN0CiZndDsm Z3Q7ICAgKiBAbWFzX2RldGFjaDogVGhlIG1hcGxlIHN0YXRlIHRyYWNraW5nIHRoZSBkZXRhY2hl ZCB0cmVlCiZndDsmZ3Q7ICAgKgomZ3Q7Jmd0OyAtICogUmV0dXJuOiAwIG9uIHN1Y2Nlc3MsIC1F UEVSTSBvbiBtc2VhbCB2bWFzLCAtRU5PTUVNIG90aGVyd2lzZQomZ3Q7Jmd0OyArICogUmV0dXJu OiAwIG9uIHN1Y2Nlc3MsIGVycm9yIG90aGVyd2lzZQomZ3Q7Jmd0OyAgICovCiZndDsmZ3Q7ICBp bnQgdm1zX2dhdGhlcl9tdW5tYXBfdm1hcyhzdHJ1Y3Qgdm1hX211bm1hcF9zdHJ1Y3QgKnZtcywK Jmd0OyZndDsgIAkJc3RydWN0IG1hX3N0YXRlICptYXNfZGV0YWNoKQomZ3Q7Jmd0OyAgewomZ3Q7 Jmd0OyAgCXN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqbmV4dCA9IE5VTEw7CiZndDsmZ3Q7IC0JaW50 IGVycm9yID0gLUVOT01FTTsKJmd0OyZndDsgKwlpbnQgZXJyb3I7CiZndDsmZ3Q7ICAKJmd0OyZn dDsgIAkvKgomZ3Q7Jmd0OyAgCSAqIElmIHdlIG5lZWQgdG8gc3BsaXQgYW55IHZtYSwgZG8gaXQg bm93IHRvIHNhdmUgcGFpbiBsYXRlci4KJmd0OyZndDsgQEAgLTExOTEsOCArMTE5MSwxMCBAQCBp bnQgdm1zX2dhdGhlcl9tdW5tYXBfdm1hcyhzdHJ1Y3Qgdm1hX211bm1hcF9zdHJ1Y3QgKnZtcywK Jmd0OyZndDsgIAkJICogaXRzIGxpbWl0IHRlbXBvcmFyaWx5LCB0byBoZWxwIGZyZWUgcmVzb3Vy Y2VzIGFzIGV4cGVjdGVkLgomZ3Q7Jmd0OyAgCQkgKi8KJmd0OyZndDsgIAkJaWYgKHZtcy0mZ3Q7 ZW5kICZsdDsgdm1zLSZndDt2bWEtJmd0O3ZtX2VuZCAmYW1wOyZhbXA7CiZndDsmZ3Q7IC0JCSAg ICB2bXMtJmd0O3ZtYS0mZ3Q7dm1fbW0tJmd0O21hcF9jb3VudCAmZ3Q7PSBzeXNjdGxfbWF4X21h cF9jb3VudCkKJmd0OyZndDsgKwkJICAgIHZtcy0mZ3Q7dm1hLSZndDt2bV9tbS0mZ3Q7bWFwX2Nv dW50ICZndDs9IHN5c2N0bF9tYXhfbWFwX2NvdW50KSB7CiZndDsmZ3Q7ICsJCQllcnJvciA9IC1F Tk9NRU07CiZndDsmZ3Q7ICAJCQlnb3RvIG1hcF9jb3VudF9leGNlZWRlZDsKJmd0OyZndDsgKwkJ fQomZ3Q7Jmd0OyAgCiZndDsmZ3Q7ICAJCS8qIERvbid0IGJvdGhlciBzcGxpdHRpbmcgdGhlIFZN QSBpZiB3ZSBjYW4ndCB1bm1hcCBpdCBhbnl3YXkgKi8KJmd0OyZndDsgIAkJaWYgKCFjYW5fbW9k aWZ5X3ZtYSh2bXMtJmd0O3ZtYSkpIHsKJmd0OyZndDsgQEAgLTEyMDAsNyArMTIwMiw4IEBAIGlu dCB2bXNfZ2F0aGVyX211bm1hcF92bWFzKHN0cnVjdCB2bWFfbXVubWFwX3N0cnVjdCAqdm1zLAom Z3Q7Jmd0OyAgCQkJZ290byBzdGFydF9zcGxpdF9mYWlsZWQ7CiZndDsmZ3Q7ICAJCX0KJmd0OyZn dDsgIAomZ3Q7Jmd0OyAtCQlpZiAoX19zcGxpdF92bWEodm1zLSZndDt2bWksIHZtcy0mZ3Q7dm1h LCB2bXMtJmd0O3N0YXJ0LCAxKSkKJmd0OyZndDsgKwkJZXJyb3IgPSBfX3NwbGl0X3ZtYSh2bXMt Jmd0O3ZtaSwgdm1zLSZndDt2bWEsIHZtcy0mZ3Q7c3RhcnQsIDEpOwomZ3Q7Jmd0OyArCQlpZiAo ZXJyb3IpCiZndDsmZ3Q7ICAJCQlnb3RvIHN0YXJ0X3NwbGl0X2ZhaWxlZDsKJmd0OyZndDsgIAl9 CiZndDsmZ3Q7ICAJdm1zLSZndDtwcmV2ID0gdm1hX3ByZXYodm1zLSZndDt2bWkpOwomZ3Q7Jmd0 OyBAQCAtMTIyMCwxMiArMTIyMywxNCBAQCBpbnQgdm1zX2dhdGhlcl9tdW5tYXBfdm1hcyhzdHJ1 Y3Qgdm1hX211bm1hcF9zdHJ1Y3QgKnZtcywKJmd0OyZndDsgIAkJfQomZ3Q7Jmd0OyAgCQkvKiBE b2VzIGl0IHNwbGl0IHRoZSBlbmQ/ICovCiZndDsmZ3Q7ICAJCWlmIChuZXh0LSZndDt2bV9lbmQg Jmd0OyB2bXMtJmd0O2VuZCkgewomZ3Q7Jmd0OyAtCQkJaWYgKF9fc3BsaXRfdm1hKHZtcy0mZ3Q7 dm1pLCBuZXh0LCB2bXMtJmd0O2VuZCwgMCkpCiZndDsmZ3Q7ICsJCQllcnJvciA9IF9fc3BsaXRf dm1hKHZtcy0mZ3Q7dm1pLCBuZXh0LCB2bXMtJmd0O2VuZCwgMCk7CiZndDsmZ3Q7ICsJCQlpZiAo ZXJyb3IpCiZndDsmZ3Q7ICAJCQkJZ290byBlbmRfc3BsaXRfZmFpbGVkOwomZ3Q7Jmd0OyAgCQl9 CiZndDsmZ3Q7ICAJCXZtYV9zdGFydF93cml0ZShuZXh0KTsKJmd0OyZndDsgIAkJbWFzX3NldCht YXNfZGV0YWNoLCB2bXMtJmd0O3ZtYV9jb3VudCsrKTsKJmd0OyZndDsgLQkJaWYgKG1hc19zdG9y ZV9nZnAobWFzX2RldGFjaCwgbmV4dCwgR0ZQX0tFUk5FTCkpCiZndDsmZ3Q7ICsJCWVycm9yID0g bWFzX3N0b3JlX2dmcChtYXNfZGV0YWNoLCBuZXh0LCBHRlBfS0VSTkVMKTsKJmd0OyZndDsgKwkJ aWYgKGVycm9yKQomZ3Q7Jmd0OyAgCQkJZ290byBtdW5tYXBfZ2F0aGVyX2ZhaWxlZDsKJmd0OyZn dDsgIAomZ3Q7Jmd0OyAgCQl2bWFfbWFya19kZXRhY2hlZChuZXh0LCB0cnVlKTsKJmd0OyZndDsg QEAgLTEyNTUsOCArMTI2MCw4IEBAIGludCB2bXNfZ2F0aGVyX211bm1hcF92bWFzKHN0cnVjdCB2 bWFfbXVubWFwX3N0cnVjdCAqdm1zLAomZ3Q7Jmd0OyAgCQkJICogc3BsaXQsIGRlc3BpdGUgd2Ug Y291bGQuIFRoaXMgaXMgdW5saWtlbHkgZW5vdWdoCiZndDsmZ3Q7ICAJCQkgKiBmYWlsdXJlIHRo YXQgaXQncyBub3Qgd29ydGggb3B0aW1pemluZyBpdCBmb3IuCiZndDsmZ3Q7ICAJCQkgKi8KJmd0 OyZndDsgLQkJCWlmICh1c2VyZmF1bHRmZF91bm1hcF9wcmVwKG5leHQsIHZtcy0mZ3Q7c3RhcnQs IHZtcy0mZ3Q7ZW5kLAomZ3Q7Jmd0OyAtCQkJCQkJICAgdm1zLSZndDt1ZikpCiZndDsmZ3Q7ICsJ CQllcnJvciA9IHVzZXJmYXVsdGZkX3VubWFwX3ByZXAobmV4dCwgdm1zLSZndDtzdGFydCwgdm1z LSZndDtlbmQsIHZtcy0mZ3Q7dWYpOwomZ3Q7CiZndDtUaGlzIGxpbmUgaXMgdG9vIGxvbmcuCiZn dDsKJmd0OyZndDsgKwkJCWlmIChlcnJvcikKJmd0OyZndDsgIAkJCQlnb3RvIHVzZXJmYXVsdGZk X2Vycm9yOwomZ3Q7CiZndDtHb29kIHlvdSBzYXcgdGhpcyBpc3N1ZSwgSSB3YXMgZ29pbmcgdG8g cG9pbnQgaXQgb3V0LgomZ3Q7CiZndDsmZ3Q7ICAJCX0KJmd0OyZndDsgICNpZmRlZiBDT05GSUdf REVCVUdfVk1fTUFQTEVfVFJFRQomZ3Q7Jmd0OyAtLSAKJmd0OyZndDsgMi40Ni4wCiZndDsmZ3Q7 IAomZ3Q7Jmd0OyAKJmd0OwomZ3Q7QmVzaWRlcyB0aGUgbGluZSBvdmVyIDgwIGNoYXJhY3RlcnMs IHRoaXMgbG9va3MgZ29vZCB0byBtZSBhbmQgc2hvdWxkIGJlCjwvcHJlPjxkaXY+Jmd0O3NxdWFz aGVkIGludG8gbXkgc2VyaWVzLjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+SGkgPHNwYW4gc3R5 bGU9IndoaXRlLXNwYWNlOiBwcmUtd3JhcCI+TGlhbSw8L3NwYW4+PC9kaXY+PGRpdj48c3BhbiBz dHlsZT0id2hpdGUtc3BhY2U6IHByZS13cmFwIj48YnI+PC9zcGFuPjwvZGl2PjxkaXY+PHNwYW4g c3R5bGU9IndoaXRlLXNwYWNlOiBwcmUtd3JhcCI+VGhhbmtzIGZvciB5b3VyIHJlcGx5Ljwvc3Bh bj48L2Rpdj48ZGl2PjxzcGFuIHN0eWxlPSJ3aGl0ZS1zcGFjZTogcHJlLXdyYXAiPkl0IHNlZW1z IHRoYXQgdGhlIGRlZmF1bHQgbWF4aW11bSBsaW5lIGxlbmd0aCBpcyAxMDAgbm93LCBzaG91bGQg d2Ugc3BsaXQgdGhlIGxpbmU/PC9zcGFuPjwvZGl2PjxkaXY+PHNwYW4gc3R5bGU9IndoaXRlLXNw YWNlOiBwcmUtd3JhcCI+SW4gYWRkaXRpb24sIGlzIGl0IGJldHRlciB0byByZW1vdmUgdGhlIGZp eGVzIGxpbmUgYXMgeW91IG1lbnRpb25lZCBvbiBwcmV2aW91cyBwYXRjaD88YnI+PC9zcGFuPjwv ZGl2PjxkaXY+PHNwYW4gc3R5bGU9IndoaXRlLXNwYWNlOiBwcmUtd3JhcCI+PGJyPjwvc3Bhbj48 L2Rpdj48ZGl2PjxzcGFuIHN0eWxlPSJ3aGl0ZS1zcGFjZTogcHJlLXdyYXAiPklmIHlvdSBhZ3Jl ZSB3aXRoIHRoZXNlIHR3byBjaGFuZ2VzLCBJIHdpbGwgcmVzZW5kIHRoZSB2MyBwYXRjaCBhcyBz b29uIGFzIHBvc3NpYmxlLjxicj48L3NwYW4+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5CZXN0 IFJlZ2FyZHMsPC9kaXY+PGRpdj5YaWFvIFlhbmc8YnI+CjwvZGl2PjxwcmU+Jmd0OwomZ3Q7VGhh bmtzLAomZ3Q7TGlhbQo8L3ByZT48L2Rpdj4= ------=_Part_4131_853267544.1725927433805--