From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from m16.mail.163.com (m16.mail.163.com [117.135.210.3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 482C826D4CA; Thu, 11 Dec 2025 03:29:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=117.135.210.3 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765423747; cv=none; b=fjYmachgHeLHP/mKHSmo8fFH5S+pOxcj/dFSHK0WnoKeyCbt6dAjrXrT2T93mMwz6kUV4QjQvDAivjDraWKhWd5zhISPrkfDdEqPlak070joim6ZJJqF78NKEwSqoxHfGwzEqCY8NvHEnXz0YGS0Eig0/qjMHriPQQ37tvkAKO0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765423747; c=relaxed/simple; bh=B3kdRNOLcj/OXyiFm8PfITf4VLWItqfaYJfei09TnjM=; h=Date:From:To:Cc:Subject:In-Reply-To:References:Content-Type: MIME-Version:Message-ID; b=ButwW89CV80jVsu7Y882o0U+Rp7aNLkuU2yBKfGabt+hCIJFU2jzOuSDT9mcmeIBi5hw4NpCpxNxRsiUOwSPtxTWScSJcrzkxVZY/HxH12lQzG/isVfq5xRf7VNndSUKv93YymqafKj3fX6oh5sVGxgivM/GydAB6RouQiq/L1U= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com; spf=pass smtp.mailfrom=163.com; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b=k0Y3NQ0d; arc=none smtp.client-ip=117.135.210.3 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=163.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b="k0Y3NQ0d" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=Date:From:To:Subject:Content-Type:MIME-Version: Message-ID; bh=B3kdRNOLcj/OXyiFm8PfITf4VLWItqfaYJfei09TnjM=; b=k 0Y3NQ0d67g/TaQ4Qbe/ODWd2C0g6XbhebbEYRMdWVY9zlq70aKJuwP4AA5VdvoNF l+vefls+k76+p29lRR2D6jz0Xi9N2euS3VEJiYS3L56ZW8jBc/AJ3BMPkM616XQ7 a23LtooVwJcRcY7ZXSti1879d2E38OAAH50NutiXjA= Received: from 00107082$163.com ( [111.35.191.189] ) by ajax-webmail-wmsvr-40-119 (Coremail) ; Thu, 11 Dec 2025 11:28:21 +0800 (CST) Date: Thu, 11 Dec 2025 11:28:21 +0800 (CST) From: "David Wang" <00107082@163.com> To: "Mal Haak" Cc: linux-kernel@vger.kernel.org, surenb@google.com, xiubli@redhat.com, idryomov@gmail.com, ceph-devel@vger.kernel.org Subject: RRe: Possible memory leak in 6.17.7 X-Priority: 3 X-Mailer: Coremail Webmail Server Version 2023.4-cmXT build 20250723(a044bf12) Copyright (c) 2002-2025 www.mailtech.cn 163com In-Reply-To: <20251210234318.5d8c2d68@xps15mal> References: <20251110182008.71e0858b@xps15mal> <20251208110829.11840-1-00107082@163.com> <20251209090831.13c7a639@xps15mal> <17469653.4a75.19b01691299.Coremail.00107082@163.com> <20251210234318.5d8c2d68@xps15mal> X-NTES-SC: AL_Qu2dB/iZvE8r5yOZY+kXn0oTju85XMCzuv8j3YJeN500piTN5A0fXF5jAFDb4sW3GSCVsjy7Th9p7ftbT4xqdI+OsYSFQS0LWcfM+qx0WXjk Content-Transfer-Encoding: base64 Content-Type: text/plain; charset=GBK Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-ID: <2a9ba88e.3aa6.19b0b73dd4e.Coremail.00107082@163.com> X-Coremail-Locale: zh_CN X-CM-TRANSID:dygvCgDXx7pWOjppw8I2AA--.13W X-CM-SenderInfo: qqqrilqqysqiywtou0bp/xtbC7RaMN2k6OlaQ6gAA3F X-Coremail-Antispam: 1U5529EdanIXcx71UUUUU7vcSsGvfC2KfnxnUU== CgpBdCAyMDI1LTEyLTEwIDIxOjQzOjE4LCAiTWFsIEhhYWsiIDxtYWxjb2xtQGhhYWsuaWQuYXU+ IHdyb3RlOgo+T24gVHVlLCA5IERlYyAyMDI1IDEyOjQwOjIxICswODAwIChDU1QpCj4iRGF2aWQg V2FuZyIgPDAwMTA3MDgyQDE2My5jb20+IHdyb3RlOgo+Cj4+IEF0IDIwMjUtMTItMDkgMDc6MDg6 MzEsICJNYWwgSGFhayIgPG1hbGNvbG1AaGFhay5pZC5hdT4gd3JvdGU6Cj4+ID5PbiBNb24sICA4 IERlYyAyMDI1IDE5OjA4OjI5ICswODAwCj4+ID5EYXZpZCBXYW5nIDwwMDEwNzA4MkAxNjMuY29t PiB3cm90ZToKPj4gPiAgCj4+ID4+IE9uIE1vbiwgMTAgTm92IDIwMjUgMTg6MjA6MDggKzEwMDAK Pj4gPj4gTWFsIEhhYWsgPG1hbGNvbG1AaGFhay5pZC5hdT4gd3JvdGU6ICAKPj4gPj4gPiBIZWxs bywKPj4gPj4gPiAKPj4gPj4gPiBJIGhhdmUgZm91bmQgYSBtZW1vcnkgbGVhayBpbiA2LjE3Ljcg YnV0IEkgYW0gdW5zdXJlIGhvdyB0bwo+PiA+PiA+IHRyYWNrIGl0IGRvd24gZWZmZWN0aXZlbHku Cj4+ID4+ID4gCj4+ID4+ID4gICAgIAo+PiA+PiAKPj4gPj4gSSB0aGluayB0aGUgYG1lbW9yeSBh bGxvY2F0aW9uIHByb2ZpbGluZ2AgZmVhdHVyZSBjYW4gaGVscC4KPj4gPj4gaHR0cHM6Ly9kb2Nz Lmtlcm5lbC5vcmcvbW0vYWxsb2NhdGlvbi1wcm9maWxpbmcuaHRtbAo+PiA+PiAKPj4gPj4gWW91 IHdvdWxkIG5lZWQgdG8gYnVpbGQgYSBrZXJuZWwgd2l0aCAKPj4gPj4gQ09ORklHX01FTV9BTExP Q19QUk9GSUxJTkc9eQo+PiA+PiBDT05GSUdfTUVNX0FMTE9DX1BST0ZJTElOR19FTkFCTEVEX0JZ X0RFRkFVTFQ9eQo+PiA+PiAKPj4gPj4gQW5kIGNoZWNrIC9wcm9jL2FsbG9jaW5mbyBmb3IgdGhl IHN1c3BpY2lvdXMgYWxsb2NhdGlvbnMgd2hpY2ggdGFrZQo+PiA+PiBtb3JlIG1lbW9yeSB0aGFu IGV4cGVjdGVkLgo+PiA+PiAKPj4gPj4gKEkgb25jZSBjYXVnaHQgYSBudmlkaWEgZHJpdmVyIG1l bW9yeSBsZWFrLikKPj4gPj4gCj4+ID4+IAo+PiA+PiBGWUkKPj4gPj4gRGF2aWQKPj4gPj4gICAK Pj4gPgo+PiA+VGhhbmsgeW91IGZvciB5b3VyIHN1Z2dlc3Rpb24uIEkgaGF2ZSBzb21lIHJlc3Vs dHMuCj4+ID4KPj4gPlJhbiB0aGUgcnN5bmMgd29ya2xvYWQgZm9yIGFib3V0IDkgaG91cnMuIEl0 IHN0YXJ0ZWQgdG8gbG9vayBsaWtlIGl0Cj4+ID53YXMgaGFwcGVuaW5nLgo+PiA+IyBzbWVtIC1w dwo+PiA+QXJlYSAgICAgICAgICAgICAgICAgICAgICAgICAgIFVzZWQgICAgICBDYWNoZSAgIE5v bmNhY2hlIAo+PiA+ZmlybXdhcmUvaGFyZHdhcmUgICAgICAgICAgICAgMC4wMCUgICAgICAwLjAw JSAgICAgIDAuMDAlIAo+PiA+a2VybmVsIGltYWdlICAgICAgICAgICAgICAgICAgMC4wMCUgICAg ICAwLjAwJSAgICAgIDAuMDAlIAo+PiA+a2VybmVsIGR5bmFtaWMgbWVtb3J5ICAgICAgICA4MC40 NiUgICAgIDY1LjgwJSAgICAgMTQuNjYlIAo+PiA+dXNlcnNwYWNlIG1lbW9yeSAgICAgICAgICAg ICAgMC4zNSUgICAgICAwLjE2JSAgICAgIDAuMTklIAo+PiA+ZnJlZSBtZW1vcnkgICAgICAgICAg ICAgICAgICAxOS4xOSUgICAgIDE5LjE5JSAgICAgIDAuMDAlIAo+PiA+IyBzb3J0IC1nIC9wcm9j L2FsbG9jaW5mb3x0YWlsfG51bWZtdCAtLXRvPWllYwo+PiA+ICAgICAgICAgMjJNICAgICA1NjA5 IG1tL21lbW9yeS5jOjExOTAgZnVuYzpmb2xpb19wcmVhbGxvYyAKPj4gPiAgICAgICAgIDIzTSAg ICAgMTkzMiBmcy94ZnMveGZzX2J1Zi5jOjIyNiBbeGZzXQo+PiA+ZnVuYzp4ZnNfYnVmX2FsbG9j X2JhY2tpbmdfbWVtIAo+PiA+ICAgICAgICAgMjRNICAgIDI0MTM1IGZzL3hmcy94ZnNfaWNhY2hl LmM6OTcgW3hmc10KPj4gPiBmdW5jOnhmc19pbm9kZV9hbGxvYyAyN00gICAgIDY2OTMgbW0vbWVt b3J5LmM6MTE5Mgo+PiA+IGZ1bmM6Zm9saW9fcHJlYWxsb2MgNThNICAgIDE0Nzg0IG1tL3BhZ2Vf ZXh0LmM6MjcxCj4+ID4gZnVuYzphbGxvY19wYWdlX2V4dCAyNThNICAgICAgMTI5IG1tL2todWdl cGFnZWQuYzoxMDY5Cj4+ID4gZnVuYzphbGxvY19jaGFyZ2VfZm9saW8gNDMwTSAgIDc3MDc4OCBs aWIveGFycmF5LmM6Mzc4Cj4+ID4gZnVuYzp4YXNfYWxsb2MgNTQ1TSAgICAzNjQ0NCBtbS9zbHVi LmM6MzA1OSBmdW5jOmFsbG9jX3NsYWJfcGFnZSAKPj4gPiAgICAgICAgOS44RyAgMjU2MzYxNyBt bS9yZWFkYWhlYWQuYzoxODkgZnVuYzpyYWN0bF9hbGxvY19mb2xpbyAKPj4gPiAgICAgICAgIDIw RyAgNTE2NDAwNCBtbS9maWxlbWFwLmM6MjAxMiBmdW5jOl9fZmlsZW1hcF9nZXRfZm9saW8gCj4+ ID4KPj4gPgo+PiA+U28gSSBzdG9wcGVkIHRoZSB3b3JrbG9hZCBhbmQgZHJvcHBlZCBjYWNoZXMg dG8gY29uZmlybS4KPj4gPgo+PiA+IyBlY2hvIDMgPiAvcHJvYy9zeXMvdm0vZHJvcF9jYWNoZXMK Pj4gPiMgc21lbSAtcHcKPj4gPkFyZWEgICAgICAgICAgICAgICAgICAgICAgICAgICBVc2VkICAg ICAgQ2FjaGUgICBOb25jYWNoZSAKPj4gPmZpcm13YXJlL2hhcmR3YXJlICAgICAgICAgICAgIDAu MDAlICAgICAgMC4wMCUgICAgICAwLjAwJSAKPj4gPmtlcm5lbCBpbWFnZSAgICAgICAgICAgICAg ICAgIDAuMDAlICAgICAgMC4wMCUgICAgICAwLjAwJSAKPj4gPmtlcm5lbCBkeW5hbWljIG1lbW9y eSAgICAgICAgMzMuNDUlICAgICAgMC4wOSUgICAgIDMzLjM2JSAKPj4gPnVzZXJzcGFjZSBtZW1v cnkgICAgICAgICAgICAgIDAuMzYlICAgICAgMC4xNiUgICAgICAwLjE5JSAKPj4gPmZyZWUgbWVt b3J5ICAgICAgICAgICAgICAgICAgNjYuMjAlICAgICA2Ni4yMCUgICAgICAwLjAwJSAKPj4gPiMg c29ydCAtZyAvcHJvYy9hbGxvY2luZm98dGFpbHxudW1mbXQgLS10bz1pZWMKPj4gPiAgICAgICAg IDEyTSAgICAgMjk4NyBtbS9leGVjbWVtLmM6NDEgZnVuYzpleGVjbWVtX3ZtYWxsb2MgCj4+ID4g ICAgICAgICAxMk0gICAgICAgIDMga2VybmVsL2RtYS9wb29sLmM6OTYgZnVuYzphdG9taWNfcG9v bF9leHBhbmQgCj4+ID4gICAgICAgICAxM00gICAgICA3NTEgbW0vc2x1Yi5jOjMwNjEgZnVuYzph bGxvY19zbGFiX3BhZ2UgCj4+ID4gICAgICAgICAxNk0gICAgICAgIDggbW0va2h1Z2VwYWdlZC5j OjEwNjkgZnVuYzphbGxvY19jaGFyZ2VfZm9saW8gCj4+ID4gICAgICAgICAxOE0gICAgIDQzNTUg bW0vbWVtb3J5LmM6MTE5MCBmdW5jOmZvbGlvX3ByZWFsbG9jIAo+PiA+ICAgICAgICAgMjRNICAg ICA2MTE5IG1tL21lbW9yeS5jOjExOTIgZnVuYzpmb2xpb19wcmVhbGxvYyAKPj4gPiAgICAgICAg IDU4TSAgICAxNDc4NCBtbS9wYWdlX2V4dC5jOjI3MSBmdW5jOmFsbG9jX3BhZ2VfZXh0IAo+PiA+ ICAgICAgICAgNjFNICAgIDE1NDQ4IG1tL3JlYWRhaGVhZC5jOjE4OSBmdW5jOnJhY3RsX2FsbG9j X2ZvbGlvIAo+PiA+ICAgICAgICAgNzlNICAgICA2NzI2IG1tL3NsdWIuYzozMDU5IGZ1bmM6YWxs b2Nfc2xhYl9wYWdlIAo+PiA+ICAgICAgICAgMTFHICAyNjc0NDg4IG1tL2ZpbGVtYXAuYzoyMDEy IGZ1bmM6X19maWxlbWFwX2dldF9mb2xpbwoKTWF5YmUgbmFycm93aW5nIGRvd24gdGhlICJOb25j YWNoZSIgY2FsbGVyIG9mIF9fZmlsZW1hcF9nZXRfZm9saW8gd291bGQgaGVscCBjbGFyaWZ5IHRo aW5ncy4KKEl0IGNvdWxkIGJlIGRlc2lnbmVkIHRoYXQgd2F5LCBhbmQgIG5lZWRzIG90aGVyIHJv dXRlIHRoYW4gZHJvcHBpbmctY2FjaGUgdG8gcmVsZWFzZSB0aGUgbWVtb3J5LCBqdXN0IGd1ZXNz Li4uLikKSWYgeW91IHdhbnQsIHlvdSBjYW4gbW9kaWZ5IGNvZGUgdG8gc3BsaXQgdGhlIGFjY291 bnRpbmcgZm9yIF9fZmlsZW1hcF9nZXRfZm9saW8gYWNjb3JkaW5nIHRvIGl0cyBjYWxsZXJzLgoK Rm9sbG93aW5nIGlzIGEgZHJhZnQgcGF0Y2g6IChiYXNlZCBvbiB2Ni4xOCkKCmRpZmYgLS1naXQg YS9pbmNsdWRlL2xpbnV4L3BhZ2VtYXAuaCBiL2luY2x1ZGUvbGludXgvcGFnZW1hcC5oCmluZGV4 IDA5YjU4MWMxZDg3OC4uYmE4YzY1OWE2YWUzIDEwMDY0NAotLS0gYS9pbmNsdWRlL2xpbnV4L3Bh Z2VtYXAuaAorKysgYi9pbmNsdWRlL2xpbnV4L3BhZ2VtYXAuaApAQCAtNzUzLDcgKzc1MywxMSBA QCBzdGF0aWMgaW5saW5lIGZnZl90IGZnZl9zZXRfb3JkZXIoc2l6ZV90IHNpemUpCiB9CiAKIHZv aWQgKmZpbGVtYXBfZ2V0X2VudHJ5KHN0cnVjdCBhZGRyZXNzX3NwYWNlICptYXBwaW5nLCBwZ29m Zl90IGluZGV4KTsKLXN0cnVjdCBmb2xpbyAqX19maWxlbWFwX2dldF9mb2xpbyhzdHJ1Y3QgYWRk cmVzc19zcGFjZSAqbWFwcGluZywgcGdvZmZfdCBpbmRleCwKKworI2RlZmluZSBfX2ZpbGVtYXBf Z2V0X2ZvbGlvKC4uLikJCQlcCisJYWxsb2NfaG9va3MoX19maWxlbWFwX2dldF9mb2xpb19ub3By b2YoX19WQV9BUkdTX18pKQorCitzdHJ1Y3QgZm9saW8gKl9fZmlsZW1hcF9nZXRfZm9saW9fbm9w cm9mKHN0cnVjdCBhZGRyZXNzX3NwYWNlICptYXBwaW5nLCBwZ29mZl90IGluZGV4LAogCQlmZ2Zf dCBmZ3BfZmxhZ3MsIGdmcF90IGdmcCk7CiBzdHJ1Y3QgcGFnZSAqcGFnZWNhY2hlX2dldF9wYWdl KHN0cnVjdCBhZGRyZXNzX3NwYWNlICptYXBwaW5nLCBwZ29mZl90IGluZGV4LAogCQlmZ2ZfdCBm Z3BfZmxhZ3MsIGdmcF90IGdmcCk7CmRpZmYgLS1naXQgYS9tbS9maWxlbWFwLmMgYi9tbS9maWxl bWFwLmMKaW5kZXggMDI0YjcxZGE1MjI0Li5lMWMxYzI2ZDdjYjMgMTAwNjQ0Ci0tLSBhL21tL2Zp bGVtYXAuYworKysgYi9tbS9maWxlbWFwLmMKQEAgLTE5MzgsNyArMTkzOCw3IEBAIHZvaWQgKmZp bGVtYXBfZ2V0X2VudHJ5KHN0cnVjdCBhZGRyZXNzX3NwYWNlICptYXBwaW5nLCBwZ29mZl90IGlu ZGV4KQogICoKICAqIFJldHVybjogVGhlIGZvdW5kIGZvbGlvIG9yIGFuIEVSUl9QVFIoKSBvdGhl cndpc2UuCiAgKi8KLXN0cnVjdCBmb2xpbyAqX19maWxlbWFwX2dldF9mb2xpbyhzdHJ1Y3QgYWRk cmVzc19zcGFjZSAqbWFwcGluZywgcGdvZmZfdCBpbmRleCwKK3N0cnVjdCBmb2xpbyAqX19maWxl bWFwX2dldF9mb2xpb19ub3Byb2Yoc3RydWN0IGFkZHJlc3Nfc3BhY2UgKm1hcHBpbmcsIHBnb2Zm X3QgaW5kZXgsCiAJCWZnZl90IGZncF9mbGFncywgZ2ZwX3QgZ2ZwKQogewogCXN0cnVjdCBmb2xp byAqZm9saW87CkBAIC0yMDA5LDcgKzIwMDksNyBAQCBzdHJ1Y3QgZm9saW8gKl9fZmlsZW1hcF9n ZXRfZm9saW8oc3RydWN0IGFkZHJlc3Nfc3BhY2UgKm1hcHBpbmcsIHBnb2ZmX3QgaW5kZXgsCiAJ CQllcnIgPSAtRU5PTUVNOwogCQkJaWYgKG9yZGVyID4gbWluX29yZGVyKQogCQkJCWFsbG9jX2dm cCB8PSBfX0dGUF9OT1JFVFJZIHwgX19HRlBfTk9XQVJOOwotCQkJZm9saW8gPSBmaWxlbWFwX2Fs bG9jX2ZvbGlvKGFsbG9jX2dmcCwgb3JkZXIpOworCQkJZm9saW8gPSBmaWxlbWFwX2FsbG9jX2Zv bGlvX25vcHJvZihhbGxvY19nZnAsIG9yZGVyKTsKIAkJCWlmICghZm9saW8pCiAJCQkJY29udGlu dWU7CiAKQEAgLTIwNTYsNyArMjA1Niw3IEBAIHN0cnVjdCBmb2xpbyAqX19maWxlbWFwX2dldF9m b2xpbyhzdHJ1Y3QgYWRkcmVzc19zcGFjZSAqbWFwcGluZywgcGdvZmZfdCBpbmRleCwKIAkJZm9s aW9fY2xlYXJfZHJvcGJlaGluZChmb2xpbyk7CiAJcmV0dXJuIGZvbGlvOwogfQotRVhQT1JUX1NZ TUJPTChfX2ZpbGVtYXBfZ2V0X2ZvbGlvKTsKK0VYUE9SVF9TWU1CT0woX19maWxlbWFwX2dldF9m b2xpb19ub3Byb2YpOwogCiBzdGF0aWMgaW5saW5lIHN0cnVjdCBmb2xpbyAqZmluZF9nZXRfZW50 cnkoc3RydWN0IHhhX3N0YXRlICp4YXMsIHBnb2ZmX3QgbWF4LAogCQl4YV9tYXJrX3QgbWFyaykK CgoKCkZZSQpEYXZpZAoKPj4gPgo+PiA+U28gaWYgSSdtIHJlYWRpbmcgdGhpcyBjb3JyZWN0bHkg c29tZXRoaW5nIGlzIGNhdXNpbmcgZm9saW9zIGNvbGxlY3QKPj4gPmFuZCBub3QgYmUgYWJsZSB0 byBiZSBmcmVlZD8gIAo+PiAKPj4gQ0MgY2VwaGZzLCBtYXliZSBzb21lb25lIGNvdWxkIGhhdmUg YW4gZWFzeSByZWFkaW5nIG91dCBvZiB0aG9zZQo+PiBmb2xpbyB1c2FnZQo+PiAKPj4gCj4+ID4K Pj4gPkFsc28gaXQncyBjbGVhciB0aGF0IHNvbWUgb2YgdGhlIGZvbGlvJ3MgYXJlIGNvdW50aW5n IGFzIGNhY2hlIGFuZAo+PiA+c29tZSBhcmVuJ3QuIAo+PiA+Cj4+ID5MaWtlIEkgc2FpZCA2LjE3 IGFuZCA2LjE4IGJvdGggaGF2ZSB0aGUgaXNzdWUuIDYuMTIgZG9lcyBub3QuIEknbSBub3cKPj4g PmdvaW5nIHRvIG1hbnVhbGx5IHdhbGsgdGhyb3VnaCBwcmV2aW91cyBrZXJuZWwgcmVsZWFzZXMg YW5kIGZpbmQKPj4gPndoZXJlIGl0IGZpcnN0IHN0YXJ0cyBoYXBwZW5pbmcgcHVyZWx5IGJlY2F1 c2UgSSdtIGhhdmluZyBpc3N1ZXMKPj4gPmJ1aWxkaW5nIGVhcmxpZXIga2VybmVscyBkdWUgdG8g cnVzdCBzdHVmZiBhbmQgb3RoZXIgcHl0aG9uCj4+ID5pbmNvbXBhdGliaWxpdGllcyBtYWtpbmcg ZG9pbmcgYSBnaXQtYmlzZWN0IGEgYml0IGZ1bi4KPj4gPgo+PiA+SSdsbCBkbyBpdCB0aGUgcGFj a2FnZXMgd2F5IHVudGlsIEkgZ2V0IGNsb3NlciwgdGhlbiBzb2x2ZSB0aGUgYnVpbGQKPj4gPmlz c3Vlcy4gCj4+ID4KPj4gPlRoYW5rcywKPj4gPk1hbAo+PiA+ICAKPlRoYW5rcyBEYXZpZC4KPgo+ SSd2ZSBjb250YWN0ZWQgdGhlIGNlcGggZGV2ZWxvcGVycyBhcyB3ZWxsLiAKPgo+VGhlcmUgd2Fz IGEgc3VnZ2VzdGlvbiBpdCB3YXMgZHVlIHRvIHRoZSBjaGFuZ2UgZnJvbSwgdG8gcXVvdGU6Cj5m b2xpby5mcmVlKCkgdG8gZm9saW8ucHV0KCkgb3Igc29tZXRoaW5nIGxpa2UgdGhpcy4KPgo+VGhl IGNoYW5nZSBoYXBwZW5lZCBhcm91bmQgNi4xNC82LjE1Cj4KPkkndmUgZm91bmQgYW4gZWFzaWVy IHJlcHJvZHVjZXIuIAo+Cj5UaGVyZSBoYXMgYmVlbiBhIHN1Z2dlc3Rpb24gdGhhdCBwZXJoYXBz IHRoZSBjZXBoIHRlYW0gbWlnaHQgbm90IGZpeAo+dGhpcyBhcyAieW91IGNhbiBqdXN0IHJlYm9v dCBiZWZvcmUgdGhlIG1hY2hpbmUgYmVjb21lcyB1bnN0YWJsZSIgYW5kCj4iTm9ib2R5IGVsc2Ug aGFzIGVuY291bnRlcmVkIHRoaXMgYnVnIgo+Cj5JJ2xsIGxlYXZlIHRoYXQgdG8gb3RoZXIgcGVv cGxlIHRvIG1ha2UgYSBjYWxsIG9uIGJ1dCBJJ2QgYXNzdW1lIHRoZQo+bGFjayBvZiByZXBvcnRz IGlzIGR1ZSB0byB0aGUgZmFjdCB0aGF0IG1vc3Qgc3RhYmxlIGRpc3Ryb3MgYXJlIHN0aWxsCj5v biBhIGEgZmFyIHRvbyBlYXJseSBrZXJuZWwgYW5kL29yIGFyZSB1c2luZyB0aGUgZnVzZSBkcml2 ZXIgd2l0aCBrOHMuCj4KPkFueXdheSwgdGhhbmtzIGZvciB5b3VyIGFzc2lzdGFuY2UuCg==