From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 0EBA942363; Thu, 12 Oct 2023 18:14:43 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D8AEC402AE; Thu, 12 Oct 2023 18:14:42 +0200 (CEST) Received: from m13128.mail.163.com (m13128.mail.163.com [220.181.13.128]) by mails.dpdk.org (Postfix) with ESMTP id 25DAA4028A for ; Thu, 12 Oct 2023 18:14:38 +0200 (CEST) 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=VKSp+aEWsjA0ymH4hNAt2v2eEFUvcfdu72jYUyDwd/Q=; b=L 5h2DYy23/3uGUD4vxDUA8U/Lw1H6ZQDMyxSddiBPqv2yGmjGfWCiNz6BYM4AGNdd gE/2KY7NwBnTAqwsV6H0Gb2dCvtD6+TQy5aRVNg6uzAZks+ANhiEb+mH9BiAJd0r 4H51OAq3ktHmUcVnD5n1VVsMD23CWHiQMlk/+BYt3c= Received: from taozj888$163.com ( [49.76.95.19] ) by ajax-webmail-wmsvr128 (Coremail) ; Fri, 13 Oct 2023 00:14:33 +0800 (CST) X-Originating-IP: [49.76.95.19] Date: Fri, 13 Oct 2023 00:14:33 +0800 (CST) From: taozj888 To: "Konstantin Ananyev" Cc: dev@dpdk.org Subject: Re:Re: [PATCH v1 2/3] examples/l3fwd: relax the Offload requirement X-Priority: 3 X-Mailer: Coremail Webmail Server Version XT5.0.14 build 20230109(dcb5de15) Copyright (c) 2002-2023 www.mailtech.cn 163com In-Reply-To: <47cddf82-ee35-473c-aa5f-f5bde64ea4e6@yandex.ru> References: <20231002085342.934130-1-taozj888@163.com> <20231002085342.934130-2-taozj888@163.com> <47cddf82-ee35-473c-aa5f-f5bde64ea4e6@yandex.ru> X-NTES-SC: AL_QuySBf2ZuEos5SSZZukfm04bju07UMu2v/4l2Y9SOp9wjBvm4BgjUEN/AmvW8v21MCS0siSrTDRW5d1FQKN4e6kBFmXdqpCbUehQFF+cxeM+ew== Content-Type: multipart/alternative; boundary="----=_Part_106592_1302144890.1697127273416" MIME-Version: 1.0 Message-ID: <436b1d87.6fc6.18b24ab13c8.Coremail.taozj888@163.com> X-Coremail-Locale: zh_CN X-CM-TRANSID: gMGowACXp+NpGyhlUW0TAA--.57052W X-CM-SenderInfo: hwdr6yqyyyqiywtou0bp/1tbiSBQHx1+FiSFtbQADst X-Coremail-Antispam: 1U5529EdanIXcx71UUUUU7vcSsGvfC2KfnxnUU== X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org ------=_Part_106592_1302144890.1697127273416 Content-Type: text/plain; charset=GBK Content-Transfer-Encoding: base64 SGkgS29uc3RhbnRpbjoKRm9yIHlvdXIgY29tbWVudHMsIHBsZWFzZSBzZWUgbXkgYW5zd2VyIGlu bGluZS4KVGhhbmtzLgoKCgoKVHJldm9yIFRhbwoKQXQgMjAyMy0xMC0wOSAxNzowMzoxMSwgIktv bnN0YW50aW4gQW5hbnlldiIgPGtvbnN0YW50aW4udi5hbmFueWV2QHlhbmRleC5ydT4gd3JvdGU6 Cj4wMi4xMC4yMDIzIDA5OjUzLCBUcmV2b3IgVGFvIKfhp9qn6qfWp+Q6Cj4+IE5vdyB0aGUgcG9y dCBSeCBvZmZsb2FkIG1vZGUgaXMgc2V0IHRvIFJURV9FVEhfUlhfT0ZGTE9BRF9DSEVDS1NVTQo+ PiBieSBkZWZhdWx0LCBidXQgc29tZSBodyBhbmQvb3IgdmlydHVhbCBpbnRlcmZhY2UgZG9lcyBu b3Qgc3VwcG9ydAo+PiB0aGUgb2ZmbG9hZCBtb2RlIHByZXN1cHBvc2VkLCBlLmcuLCBzb21lIHZp cnRpbyBpbnRlcmZhY2VzIGluCj4+IHRoZSBjbG91ZCBtYXkgb25seSBwYXJ0bHkgc3VwcG9ydCBS VEVfRVRIX1JYX09GRkxPQURfVURQX0NLU1VNLwo+PiBSVEVfRVRIX1JYX09GRkxPQURfVENQX0NL U1VNLAo+PiBidXQgbm90IFJURV9FVEhfUlhfT0ZGTE9BRF9JUFY0X0NLU1VNLCBhbmQgdGhlIGVy cm9yIG1zZyBoZXJlOgo+PiAKPj4gRXRoZGV2IHBvcnRfaWQ9MCByZXF1ZXN0ZWQgUnggb2ZmbG9h ZHMgMHhlIGRvZXMgbm90IG1hdGNoIFJ4IG9mZmxvYWRzCj4+IGNhcGFiaWxpdGllcyAweDIwMWQg aW4gcnRlX2V0aF9kZXZfY29uZmlndXJlKCkKPj4gCj4+IFNvIHRvIGVuYWJsZSB0aGUgbDNmd2Qg cnVubmluZyBpbiB0aGF0IGVudmlyb25tZW50LCB0aGUgUnggbW9kZSByZXF1aXJlbWVudAo+PiBj YW4gYmUgcmVsYXhlZCB0byByZWZsZWN0IHRoZSBoYXJkd2FyZSBmZWF0dXJlIHJlYWxpdHkgaGVy ZSwgYW5kIHRoZSBsM2Z3ZAo+PiBjYW4gcnVuIHNtb290aGx5IHRoZW4uCj4+IEEgd2FybmluZyBt c2cgd291bGQgYmUgcHJvdmlkZWQgdG8gdXNlciBpbiBjYXNlIGl0IGhhcHBlbnMgaGVyZS4KPj4g Cj4+IE9uIHRoZSBvdGhlciBzaWRlLCBlbmFibGluZyB0aGUgc29mdHdhcmUgY2tzdW0gY2hlY2sg aW4gY2FzZSBtaXNzaW5nIHRoZQo+PiBodyBzdXBwb3J0Lgo+PiAKPj4gVGhlIHJlbGF4IGFjdGlv biBmb3IgcnggY2tzdW0gb2ZmbG9hZCBpcyBqdXN0IGVuYWJsZWQgd2hlbiByZWxheF9yeF9tb2Rl IGlzCj4+IHRydWUgd2hpY2ggaXMgZmFsc2UgYnkgZGVmYXVsdC4KPj4gCj4+IFNpZ25lZC1vZmYt Ynk6IFRyZXZvciBUYW8gPHRhb3pqODg4QDE2My5jb20+Cj4+IC0tLQo+PiAgIGV4YW1wbGVzL2wz ZndkL2wzZndkLmggICAgIHwgMTIgKysrKysrKysrKy0tCj4+ICAgZXhhbXBsZXMvbDNmd2QvbDNm d2RfZW0uaCAgfCAgMiArLQo+PiAgIGV4YW1wbGVzL2wzZndkL2wzZndkX2xwbS5oIHwgIDIgKy0K Pj4gICBleGFtcGxlcy9sM2Z3ZC9tYWluLmMgICAgICB8IDE0ICsrKysrKysrKysrKysrCj4+ICAg NCBmaWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQo+PiAKPj4g ZGlmZiAtLWdpdCBhL2V4YW1wbGVzL2wzZndkL2wzZndkLmggYi9leGFtcGxlcy9sM2Z3ZC9sM2Z3 ZC5oCj4+IGluZGV4IGI1NTg1NWM5MzIuLmZkOThhZDMzNzMgMTAwNjQ0Cj4+IC0tLSBhL2V4YW1w bGVzL2wzZndkL2wzZndkLmgKPj4gKysrIGIvZXhhbXBsZXMvbDNmd2QvbDNmd2QuaAo+PiBAQCAt MTU5LDcgKzE1OSw3IEBAIHNlbmRfc2luZ2xlX3BhY2tldChzdHJ1Y3QgbGNvcmVfY29uZiAqcWNv bmYsCj4+ICAgCj4+ICAgI2lmZGVmIERPX1JGQ18xODEyX0NIRUNLUwo+PiAgIHN0YXRpYyBpbmxp bmUgaW50Cj4+IC1pc192YWxpZF9pcHY0X3BrdChzdHJ1Y3QgcnRlX2lwdjRfaGRyICpwa3QsIHVp bnQzMl90IGxpbmtfbGVuKQo+PiAraXNfdmFsaWRfaXB2NF9wa3Qoc3RydWN0IHJ0ZV9pcHY0X2hk ciAqcGt0LCB1aW50MzJfdCBsaW5rX2xlbiwgdWludDY0X3Qgb2xfZmxhZ3MpCj4+ICAgewo+PiAg IAkvKiBGcm9tIGh0dHA6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzE4MTIudHh0IHNlY3Rp b24gNS4yLjIgKi8KPj4gICAJLyoKPj4gQEAgLTE3MCw3ICsxNzAsMTUgQEAgaXNfdmFsaWRfaXB2 NF9wa3Qoc3RydWN0IHJ0ZV9pcHY0X2hkciAqcGt0LCB1aW50MzJfdCBsaW5rX2xlbikKPj4gICAJ CXJldHVybiAtMTsKPj4gICAKPj4gICAJLyogMi4gVGhlIElQIGNoZWNrc3VtIG11c3QgYmUgY29y cmVjdC4gKi8KPj4gLQkvKiB0aGlzIGlzIGNoZWNrZWQgaW4gSC9XICovCj4+ICsJLyogaWYgdGhp cyBpcyBub3QgY2hlY2tlZCBpbiBIL1csIGNoZWNrIGl0LiAqLwo+PiArCWlmICgob2xfZmxhZ3Mg JiBSVEVfRVRIX1JYX09GRkxPQURfSVBWNF9DS1NVTSkgPT0gMCkgewo+PiArCQl1aW50MTZfdCBh Y3R1YWxfY2tzdW0sIGV4cGVjdGVkX2Nrc3VtOwo+PiArCQlhY3R1YWxfY2tzdW0gPSBwa3QtPmhk cl9jaGVja3N1bTsKPj4gKwkJcGt0LT5oZHJfY2hlY2tzdW0gPSAwOwo+PiArCQlleHBlY3RlZF9j a3N1bSA9IHJ0ZV9pcHY0X2Nrc3VtKHBrdCk7Cj4+ICsJCWlmIChhY3R1YWxfY2tzdW0gIT0gZXhw ZWN0ZWRfY2tzdW0pCj4+ICsJCQlyZXR1cm4gLTI7Cj4+ICsJfQo+PiAgIAo+PiAgIAkvKgo+PiAg IAkgKiAzLiBUaGUgSVAgdmVyc2lvbiBudW1iZXIgbXVzdCBiZSA0LiBJZiB0aGUgdmVyc2lvbiBu dW1iZXIgaXMgbm90IDQKPj4gZGlmZiAtLWdpdCBhL2V4YW1wbGVzL2wzZndkL2wzZndkX2VtLmgg Yi9leGFtcGxlcy9sM2Z3ZC9sM2Z3ZF9lbS5oCj4+IGluZGV4IDdkMDUxZmMwNzYuLjFmZWUyZTJl NmMgMTAwNjQ0Cj4+IC0tLSBhL2V4YW1wbGVzL2wzZndkL2wzZndkX2VtLmgKPj4gKysrIGIvZXhh bXBsZXMvbDNmd2QvbDNmd2RfZW0uaAo+PiBAQCAtMjAsNyArMjAsNyBAQCBsM2Z3ZF9lbV9oYW5k bGVfaXB2NChzdHJ1Y3QgcnRlX21idWYgKm0sIHVpbnQxNl90IHBvcnRpZCwKPj4gICAKPj4gICAj aWZkZWYgRE9fUkZDXzE4MTJfQ0hFQ0tTCj4+ICAgCS8qIENoZWNrIHRvIG1ha2Ugc3VyZSB0aGUg cGFja2V0IGlzIHZhbGlkIChSRkMxODEyKSAqLwo+PiAtCWlmIChpc192YWxpZF9pcHY0X3BrdChp cHY0X2hkciwgbS0+cGt0X2xlbikgPCAwKSB7Cj4+ICsJaWYgKGlzX3ZhbGlkX2lwdjRfcGt0KGlw djRfaGRyLCBtLT5wa3RfbGVuLCBtLT5vbF9mbGFncykgPCAwKSB7Cj4+ICAgCQlydGVfcGt0bWJ1 Zl9mcmVlKG0pOwo+PiAgIAkJcmV0dXJuIEJBRF9QT1JUOwo+PiAgIAl9Cj4+IGRpZmYgLS1naXQg YS9leGFtcGxlcy9sM2Z3ZC9sM2Z3ZF9scG0uaCBiL2V4YW1wbGVzL2wzZndkL2wzZndkX2xwbS5o Cj4+IGluZGV4IGM2MWI5Njk1ODQuLjVkZGFlN2RhMGYgMTAwNjQ0Cj4+IC0tLSBhL2V4YW1wbGVz L2wzZndkL2wzZndkX2xwbS5oCj4+ICsrKyBiL2V4YW1wbGVzL2wzZndkL2wzZndkX2xwbS5oCj4+ IEBAIC0yMiw3ICsyMiw3IEBAIGwzZndkX2xwbV9zaW1wbGVfZm9yd2FyZChzdHJ1Y3QgcnRlX21i dWYgKm0sIHVpbnQxNl90IHBvcnRpZCwKPj4gICAKPj4gICAjaWZkZWYgRE9fUkZDXzE4MTJfQ0hF Q0tTCj4+ICAgCQkvKiBDaGVjayB0byBtYWtlIHN1cmUgdGhlIHBhY2tldCBpcyB2YWxpZCAoUkZD MTgxMikgKi8KPj4gLQkJaWYgKGlzX3ZhbGlkX2lwdjRfcGt0KGlwdjRfaGRyLCBtLT5wa3RfbGVu KSA8IDApIHsKPj4gKwkJaWYgKGlzX3ZhbGlkX2lwdjRfcGt0KGlwdjRfaGRyLCBtLT5wa3RfbGVu KSA8IDAsIG0tPm9sX2ZsYWdzKSB7Cj4KCj5UeXBvLCBwbHMgZml4LgoKCj5PSywgSSB3aWxsIGZp eCBpdC4gVGhhbmtzLgo+Cj4+ICAgCQkJcnRlX3BrdG1idWZfZnJlZShtKTsKPj4gICAJCQlyZXR1 cm47Cj4+ICAgCQl9Cj4+IGRpZmYgLS1naXQgYS9leGFtcGxlcy9sM2Z3ZC9tYWluLmMgYi9leGFt cGxlcy9sM2Z3ZC9tYWluLmMKPj4gaW5kZXggMmM4ZjUyOGQwMC4uYTQ4YWU3ZjYyYiAxMDA2NDQK Pj4gLS0tIGEvZXhhbXBsZXMvbDNmd2QvbWFpbi5jCj4+ICsrKyBiL2V4YW1wbGVzL2wzZndkL21h aW4uYwo+PiBAQCAtMTI4NCw2ICsxMjg0LDIwIEBAIGwzZndkX3BvbGxfcmVzb3VyY2Vfc2V0dXAo dm9pZCkKPj4gICAJCQkJbG9jYWxfcG9ydF9jb25mLnJ4X2Fkdl9jb25mLnJzc19jb25mLnJzc19o Zik7Cj4+ICAgCQl9Cj4+ICAgCj4+ICsJCS8qIHJlbGF4IHRoZSByeCBvZmZsb2FkIHJlcXVpcmVt ZW50ICovCj4+ICsJCWlmICgobG9jYWxfcG9ydF9jb25mLnJ4bW9kZS5vZmZsb2FkcyAmIGRldl9p bmZvLnJ4X29mZmxvYWRfY2FwYSkgIT0KPj4gKwkJCWxvY2FsX3BvcnRfY29uZi5yeG1vZGUub2Zm bG9hZHMpIHsKPgo+Cj5PaywgYnV0IHdlIHJlbGF4IG9ubHkgSVAgY2tzdW0uCj5UaG91Z2ggbDNm d2QgdHJpZXMgdG8gZW5hYmxlIElQL1RDUC9VRFAgY2tzdW0uCgo+V2hhdCBpZiBUQ1AvVURQIGlz IG5vdCBzdXBwb3J0ZWQsIHNob3VsZCB3ZSBhbGxvdyBpdCBvciBmYWlsPwoKCj5JIHRoaW5rIHRo ZSBsM2Z3ZCBqdXN0IGNoZWNrIHRoZSBwYWNrZXQgYXQgdGhlIElQIGxheWVyLCBhbmQgdGhlIFRD UC9VRFAgc2hvdWxkIG5vdCBib3RoZXIgdXMgaGVyZSwgc28gSSB0aGluayBpdCBjYW4gYmUgYWxs b3dlZCB0byByZWxheCB0aGVtIGlmIHRoZXkgYXJlIG5vdCBzdXBwb3J0ZWQuIApXaGF0IGRvIHRo aW5rIGFib3V0IGl0PwpUaGFua3MuCgoKCgo+Cj4KPj4gKwkJCXByaW50ZigiUG9ydCAldSByZXF1 ZXN0ZWQgUnggb2ZmbG9hZHMgMHglIlBSSXg2NCIgZG9lcyBub3QiCj4+ICsJCQkJIiBtYXRjaCBS eCBvZmZsb2FkcyBjYXBhYmlsaXRpZXMgMHglIlBSSXg2NCJcbiIsCj4+ICsJCQkJcG9ydGlkLCBs b2NhbF9wb3J0X2NvbmYucnhtb2RlLm9mZmxvYWRzLAo+PiArCQkJCWRldl9pbmZvLnJ4X29mZmxv YWRfY2FwYSk7Cj4+ICsJCQlpZiAocmVsYXhfcnhfbW9kZSkgewo+PiArCQkJCWxvY2FsX3BvcnRf Y29uZi5yeG1vZGUub2ZmbG9hZHMgJj0gZGV2X2luZm8ucnhfb2ZmbG9hZF9jYXBhOwo+PiArCQkJ CXByaW50Zigid2FybmluZzogbW9kaWZpZWQgdGhlIHJ4IG9mZmxvYWQgdG8gMHglIlBSSXg2NCIg YmFzZWQgb24gZGV2aWNlIgo+PiArCQkJCSIgY2FwYWJpbGl0eVxuIiwgbG9jYWxfcG9ydF9jb25m LnJ4bW9kZS5vZmZsb2Fkcyk7Cj4+ICsJCQl9Cj4+ICsJCX0KPj4gKwo+PiAgIAkJcmV0ID0gcnRl X2V0aF9kZXZfY29uZmlndXJlKHBvcnRpZCwgbmJfcnhfcXVldWUsCj4+ICAgCQkJCQkodWludDE2 X3Qpbl90eF9xdWV1ZSwgJmxvY2FsX3BvcnRfY29uZik7Cj4+ICAgCQlpZiAocmV0IDwgMCkKPgo+ aWYgeW91IGdvaW5nIHRvIHN1Ym1pdCBuZXcgdmVyc2lvbiwgcGxzIGRvbid0IGZvcmdldCB0byBi dW1wIHRoZSB2ZXJzaW9uIAoKPm51bWJlciBvZiB0aGUgcGF0Y2guCgoKPk9LLCBJIHdpbGwgY2hl Y2sgaXQuClRoYW5rcy4= ------=_Part_106592_1302144890.1697127273416 Content-Type: text/html; charset=GBK Content-Transfer-Encoding: base64 PGRpdiBzdHlsZT0ibGluZS1oZWlnaHQ6MS43O2NvbG9yOiMwMDAwMDA7Zm9udC1zaXplOjE0cHg7 Zm9udC1mYW1pbHk6QXJpYWwiPjxkaXYgc3R5bGU9Im1hcmdpbjogMDsiPkhpIEtvbnN0YW50aW46 PC9kaXY+PGRpdiBzdHlsZT0ibWFyZ2luOiAwOyI+Rm9yIHlvdXIgY29tbWVudHMsIHBsZWFzZSBz ZWUgbXkgYW5zd2VyIDxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU0LCAxMzIs IDE1KTsiPjxiPmlubGluZTwvYj48L3NwYW4+LjwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbjogMDsi PlRoYW5rcy48L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW46IDA7Ij48YnI+PC9kaXY+PGRpdiBzdHls ZT0ibWFyZ2luOiAwOyI+PGJyPjwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbjogMDsiPlRyZXZvciBU YW88L2Rpdj48cHJlPjxicj5BdCAyMDIzLTEwLTA5IDE3OjAzOjExLCAiS29uc3RhbnRpbiBBbmFu eWV2IiAmbHQ7a29uc3RhbnRpbi52LmFuYW55ZXZAeWFuZGV4LnJ1Jmd0OyB3cm90ZToKJmd0OzAy LjEwLjIwMjMgMDk6NTMsIFRyZXZvciBUYW8gp+Gn2qfqp9an5DoKJmd0OyZndDsgTm93IHRoZSBw b3J0IFJ4IG9mZmxvYWQgbW9kZSBpcyBzZXQgdG8gUlRFX0VUSF9SWF9PRkZMT0FEX0NIRUNLU1VN CiZndDsmZ3Q7IGJ5IGRlZmF1bHQsIGJ1dCBzb21lIGh3IGFuZC9vciB2aXJ0dWFsIGludGVyZmFj ZSBkb2VzIG5vdCBzdXBwb3J0CiZndDsmZ3Q7IHRoZSBvZmZsb2FkIG1vZGUgcHJlc3VwcG9zZWQs IGUuZy4sIHNvbWUgdmlydGlvIGludGVyZmFjZXMgaW4KJmd0OyZndDsgdGhlIGNsb3VkIG1heSBv bmx5IHBhcnRseSBzdXBwb3J0IFJURV9FVEhfUlhfT0ZGTE9BRF9VRFBfQ0tTVU0vCiZndDsmZ3Q7 IFJURV9FVEhfUlhfT0ZGTE9BRF9UQ1BfQ0tTVU0sCiZndDsmZ3Q7IGJ1dCBub3QgUlRFX0VUSF9S WF9PRkZMT0FEX0lQVjRfQ0tTVU0sIGFuZCB0aGUgZXJyb3IgbXNnIGhlcmU6CiZndDsmZ3Q7IAom Z3Q7Jmd0OyBFdGhkZXYgcG9ydF9pZD0wIHJlcXVlc3RlZCBSeCBvZmZsb2FkcyAweGUgZG9lcyBu b3QgbWF0Y2ggUnggb2ZmbG9hZHMKJmd0OyZndDsgY2FwYWJpbGl0aWVzIDB4MjAxZCBpbiBydGVf ZXRoX2Rldl9jb25maWd1cmUoKQomZ3Q7Jmd0OyAKJmd0OyZndDsgU28gdG8gZW5hYmxlIHRoZSBs M2Z3ZCBydW5uaW5nIGluIHRoYXQgZW52aXJvbm1lbnQsIHRoZSBSeCBtb2RlIHJlcXVpcmVtZW50 CiZndDsmZ3Q7IGNhbiBiZSByZWxheGVkIHRvIHJlZmxlY3QgdGhlIGhhcmR3YXJlIGZlYXR1cmUg cmVhbGl0eSBoZXJlLCBhbmQgdGhlIGwzZndkCiZndDsmZ3Q7IGNhbiBydW4gc21vb3RobHkgdGhl bi4KJmd0OyZndDsgQSB3YXJuaW5nIG1zZyB3b3VsZCBiZSBwcm92aWRlZCB0byB1c2VyIGluIGNh c2UgaXQgaGFwcGVucyBoZXJlLgomZ3Q7Jmd0OyAKJmd0OyZndDsgT24gdGhlIG90aGVyIHNpZGUs IGVuYWJsaW5nIHRoZSBzb2Z0d2FyZSBja3N1bSBjaGVjayBpbiBjYXNlIG1pc3NpbmcgdGhlCiZn dDsmZ3Q7IGh3IHN1cHBvcnQuCiZndDsmZ3Q7IAomZ3Q7Jmd0OyBUaGUgcmVsYXggYWN0aW9uIGZv ciByeCBja3N1bSBvZmZsb2FkIGlzIGp1c3QgZW5hYmxlZCB3aGVuIHJlbGF4X3J4X21vZGUgaXMK Jmd0OyZndDsgdHJ1ZSB3aGljaCBpcyBmYWxzZSBieSBkZWZhdWx0LgomZ3Q7Jmd0OyAKJmd0OyZn dDsgU2lnbmVkLW9mZi1ieTogVHJldm9yIFRhbyAmbHQ7dGFvemo4ODhAMTYzLmNvbSZndDsKJmd0 OyZndDsgLS0tCiZndDsmZ3Q7ICAgZXhhbXBsZXMvbDNmd2QvbDNmd2QuaCAgICAgfCAxMiArKysr KysrKysrLS0KJmd0OyZndDsgICBleGFtcGxlcy9sM2Z3ZC9sM2Z3ZF9lbS5oICB8ICAyICstCiZn dDsmZ3Q7ICAgZXhhbXBsZXMvbDNmd2QvbDNmd2RfbHBtLmggfCAgMiArLQomZ3Q7Jmd0OyAgIGV4 YW1wbGVzL2wzZndkL21haW4uYyAgICAgIHwgMTQgKysrKysrKysrKysrKysKJmd0OyZndDsgICA0 IGZpbGVzIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCiZndDsmZ3Q7 IAomZ3Q7Jmd0OyBkaWZmIC0tZ2l0IGEvZXhhbXBsZXMvbDNmd2QvbDNmd2QuaCBiL2V4YW1wbGVz L2wzZndkL2wzZndkLmgKJmd0OyZndDsgaW5kZXggYjU1ODU1YzkzMi4uZmQ5OGFkMzM3MyAxMDA2 NDQKJmd0OyZndDsgLS0tIGEvZXhhbXBsZXMvbDNmd2QvbDNmd2QuaAomZ3Q7Jmd0OyArKysgYi9l eGFtcGxlcy9sM2Z3ZC9sM2Z3ZC5oCiZndDsmZ3Q7IEBAIC0xNTksNyArMTU5LDcgQEAgc2VuZF9z aW5nbGVfcGFja2V0KHN0cnVjdCBsY29yZV9jb25mICpxY29uZiwKJmd0OyZndDsgICAKJmd0OyZn dDsgICAjaWZkZWYgRE9fUkZDXzE4MTJfQ0hFQ0tTCiZndDsmZ3Q7ICAgc3RhdGljIGlubGluZSBp bnQKJmd0OyZndDsgLWlzX3ZhbGlkX2lwdjRfcGt0KHN0cnVjdCBydGVfaXB2NF9oZHIgKnBrdCwg dWludDMyX3QgbGlua19sZW4pCiZndDsmZ3Q7ICtpc192YWxpZF9pcHY0X3BrdChzdHJ1Y3QgcnRl X2lwdjRfaGRyICpwa3QsIHVpbnQzMl90IGxpbmtfbGVuLCB1aW50NjRfdCBvbF9mbGFncykKJmd0 OyZndDsgICB7CiZndDsmZ3Q7ICAgCS8qIEZyb20gaHR0cDovL3d3dy5yZmMtZWRpdG9yLm9yZy9y ZmMvcmZjMTgxMi50eHQgc2VjdGlvbiA1LjIuMiAqLwomZ3Q7Jmd0OyAgIAkvKgomZ3Q7Jmd0OyBA QCAtMTcwLDcgKzE3MCwxNSBAQCBpc192YWxpZF9pcHY0X3BrdChzdHJ1Y3QgcnRlX2lwdjRfaGRy ICpwa3QsIHVpbnQzMl90IGxpbmtfbGVuKQomZ3Q7Jmd0OyAgIAkJcmV0dXJuIC0xOwomZ3Q7Jmd0 OyAgIAomZ3Q7Jmd0OyAgIAkvKiAyLiBUaGUgSVAgY2hlY2tzdW0gbXVzdCBiZSBjb3JyZWN0LiAq LwomZ3Q7Jmd0OyAtCS8qIHRoaXMgaXMgY2hlY2tlZCBpbiBIL1cgKi8KJmd0OyZndDsgKwkvKiBp ZiB0aGlzIGlzIG5vdCBjaGVja2VkIGluIEgvVywgY2hlY2sgaXQuICovCiZndDsmZ3Q7ICsJaWYg KChvbF9mbGFncyAmYW1wOyBSVEVfRVRIX1JYX09GRkxPQURfSVBWNF9DS1NVTSkgPT0gMCkgewom Z3Q7Jmd0OyArCQl1aW50MTZfdCBhY3R1YWxfY2tzdW0sIGV4cGVjdGVkX2Nrc3VtOwomZ3Q7Jmd0 OyArCQlhY3R1YWxfY2tzdW0gPSBwa3QtJmd0O2hkcl9jaGVja3N1bTsKJmd0OyZndDsgKwkJcGt0 LSZndDtoZHJfY2hlY2tzdW0gPSAwOwomZ3Q7Jmd0OyArCQlleHBlY3RlZF9ja3N1bSA9IHJ0ZV9p cHY0X2Nrc3VtKHBrdCk7CiZndDsmZ3Q7ICsJCWlmIChhY3R1YWxfY2tzdW0gIT0gZXhwZWN0ZWRf Y2tzdW0pCiZndDsmZ3Q7ICsJCQlyZXR1cm4gLTI7CiZndDsmZ3Q7ICsJfQomZ3Q7Jmd0OyAgIAom Z3Q7Jmd0OyAgIAkvKgomZ3Q7Jmd0OyAgIAkgKiAzLiBUaGUgSVAgdmVyc2lvbiBudW1iZXIgbXVz dCBiZSA0LiBJZiB0aGUgdmVyc2lvbiBudW1iZXIgaXMgbm90IDQKJmd0OyZndDsgZGlmZiAtLWdp dCBhL2V4YW1wbGVzL2wzZndkL2wzZndkX2VtLmggYi9leGFtcGxlcy9sM2Z3ZC9sM2Z3ZF9lbS5o CiZndDsmZ3Q7IGluZGV4IDdkMDUxZmMwNzYuLjFmZWUyZTJlNmMgMTAwNjQ0CiZndDsmZ3Q7IC0t LSBhL2V4YW1wbGVzL2wzZndkL2wzZndkX2VtLmgKJmd0OyZndDsgKysrIGIvZXhhbXBsZXMvbDNm d2QvbDNmd2RfZW0uaAomZ3Q7Jmd0OyBAQCAtMjAsNyArMjAsNyBAQCBsM2Z3ZF9lbV9oYW5kbGVf aXB2NChzdHJ1Y3QgcnRlX21idWYgKm0sIHVpbnQxNl90IHBvcnRpZCwKJmd0OyZndDsgICAKJmd0 OyZndDsgICAjaWZkZWYgRE9fUkZDXzE4MTJfQ0hFQ0tTCiZndDsmZ3Q7ICAgCS8qIENoZWNrIHRv IG1ha2Ugc3VyZSB0aGUgcGFja2V0IGlzIHZhbGlkIChSRkMxODEyKSAqLwomZ3Q7Jmd0OyAtCWlm IChpc192YWxpZF9pcHY0X3BrdChpcHY0X2hkciwgbS0mZ3Q7cGt0X2xlbikgJmx0OyAwKSB7CiZn dDsmZ3Q7ICsJaWYgKGlzX3ZhbGlkX2lwdjRfcGt0KGlwdjRfaGRyLCBtLSZndDtwa3RfbGVuLCBt LSZndDtvbF9mbGFncykgJmx0OyAwKSB7CiZndDsmZ3Q7ICAgCQlydGVfcGt0bWJ1Zl9mcmVlKG0p OwomZ3Q7Jmd0OyAgIAkJcmV0dXJuIEJBRF9QT1JUOwomZ3Q7Jmd0OyAgIAl9CiZndDsmZ3Q7IGRp ZmYgLS1naXQgYS9leGFtcGxlcy9sM2Z3ZC9sM2Z3ZF9scG0uaCBiL2V4YW1wbGVzL2wzZndkL2wz ZndkX2xwbS5oCiZndDsmZ3Q7IGluZGV4IGM2MWI5Njk1ODQuLjVkZGFlN2RhMGYgMTAwNjQ0CiZn dDsmZ3Q7IC0tLSBhL2V4YW1wbGVzL2wzZndkL2wzZndkX2xwbS5oCiZndDsmZ3Q7ICsrKyBiL2V4 YW1wbGVzL2wzZndkL2wzZndkX2xwbS5oCiZndDsmZ3Q7IEBAIC0yMiw3ICsyMiw3IEBAIGwzZndk X2xwbV9zaW1wbGVfZm9yd2FyZChzdHJ1Y3QgcnRlX21idWYgKm0sIHVpbnQxNl90IHBvcnRpZCwK Jmd0OyZndDsgICAKJmd0OyZndDsgICAjaWZkZWYgRE9fUkZDXzE4MTJfQ0hFQ0tTCiZndDsmZ3Q7 ICAgCQkvKiBDaGVjayB0byBtYWtlIHN1cmUgdGhlIHBhY2tldCBpcyB2YWxpZCAoUkZDMTgxMikg Ki8KJmd0OyZndDsgLQkJaWYgKGlzX3ZhbGlkX2lwdjRfcGt0KGlwdjRfaGRyLCBtLSZndDtwa3Rf bGVuKSAmbHQ7IDApIHsKJmd0OyZndDsgKwkJaWYgKGlzX3ZhbGlkX2lwdjRfcGt0KGlwdjRfaGRy LCBtLSZndDtwa3RfbGVuKSAmbHQ7IDAsIG0tJmd0O29sX2ZsYWdzKSB7CiZndDsKPGRpdj4mZ3Q7 VHlwbywgcGxzIGZpeC48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PjxzcGFuIHN0eWxlPSJiYWNr Z3JvdW5kLWNvbG9yOiByZ2IoMjU0LCAxMzIsIDE1KTsiPjxiPiZndDtPSywgSSB3aWxsIGZpeCBp dC4gVGhhbmtzLjwvYj48L3NwYW4+PC9kaXY+Jmd0OwomZ3Q7Jmd0OyAgIAkJCXJ0ZV9wa3RtYnVm X2ZyZWUobSk7CiZndDsmZ3Q7ICAgCQkJcmV0dXJuOwomZ3Q7Jmd0OyAgIAkJfQomZ3Q7Jmd0OyBk aWZmIC0tZ2l0IGEvZXhhbXBsZXMvbDNmd2QvbWFpbi5jIGIvZXhhbXBsZXMvbDNmd2QvbWFpbi5j CiZndDsmZ3Q7IGluZGV4IDJjOGY1MjhkMDAuLmE0OGFlN2Y2MmIgMTAwNjQ0CiZndDsmZ3Q7IC0t LSBhL2V4YW1wbGVzL2wzZndkL21haW4uYwomZ3Q7Jmd0OyArKysgYi9leGFtcGxlcy9sM2Z3ZC9t YWluLmMKJmd0OyZndDsgQEAgLTEyODQsNiArMTI4NCwyMCBAQCBsM2Z3ZF9wb2xsX3Jlc291cmNl X3NldHVwKHZvaWQpCiZndDsmZ3Q7ICAgCQkJCWxvY2FsX3BvcnRfY29uZi5yeF9hZHZfY29uZi5y c3NfY29uZi5yc3NfaGYpOwomZ3Q7Jmd0OyAgIAkJfQomZ3Q7Jmd0OyAgIAomZ3Q7Jmd0OyArCQkv KiByZWxheCB0aGUgcnggb2ZmbG9hZCByZXF1aXJlbWVudCAqLwomZ3Q7Jmd0OyArCQlpZiAoKGxv Y2FsX3BvcnRfY29uZi5yeG1vZGUub2ZmbG9hZHMgJmFtcDsgZGV2X2luZm8ucnhfb2ZmbG9hZF9j YXBhKSAhPQomZ3Q7Jmd0OyArCQkJbG9jYWxfcG9ydF9jb25mLnJ4bW9kZS5vZmZsb2Fkcykgewom Z3Q7CiZndDsKJmd0O09rLCBidXQgd2UgcmVsYXggb25seSBJUCBja3N1bS4KJmd0O1Rob3VnaCBs M2Z3ZCB0cmllcyB0byBlbmFibGUgSVAvVENQL1VEUCBja3N1bS4KPGRpdj4mZ3Q7V2hhdCBpZiBU Q1AvVURQIGlzIG5vdCBzdXBwb3J0ZWQsIHNob3VsZCB3ZSBhbGxvdyBpdCBvciBmYWlsPzwvZGl2 PjxkaXY+PGJyPjwvZGl2PjxkaXY+PHNwYW4gc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYigy NTQsIDEzMiwgMTUpOyI+PGI+Jmd0O0kgdGhpbmsgdGhlIGwzZndkIGp1c3QgY2hlY2sgdGhlIHBh Y2tldCBhdCB0aGUgSVAgbGF5ZXIsIGFuZCB0aGUgVENQL1VEUCBzaG91bGQgbm90IGJvdGhlciB1 cyBoZXJlLCBzbyBJIHRoaW5rIGl0IGNhbiBiZSBhbGxvd2VkIHRvIHJlbGF4IHRoZW0gaWYgdGhl eSBhcmUgbm90IHN1cHBvcnRlZC4gPC9iPjwvc3Bhbj48L2Rpdj48ZGl2PjxzcGFuIHN0eWxlPSJi YWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU0LCAxMzIsIDE1KTsiPjxiPldoYXQgZG8gdGhpbmsgYWJv dXQgaXQ/PC9iPjwvc3Bhbj48L2Rpdj48ZGl2PjxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9y OiByZ2IoMjU0LCAxMzIsIDE1KTsiPjxiPlRoYW5rcy48L2I+PC9zcGFuPjwvZGl2PjxkaXY+PGJy PjwvZGl2PjxkaXY+PGJyPjwvZGl2PiZndDsKJmd0OwomZ3Q7Jmd0OyArCQkJcHJpbnRmKCJQb3J0 ICV1IHJlcXVlc3RlZCBSeCBvZmZsb2FkcyAweCUiUFJJeDY0IiBkb2VzIG5vdCIKJmd0OyZndDsg KwkJCQkiIG1hdGNoIFJ4IG9mZmxvYWRzIGNhcGFiaWxpdGllcyAweCUiUFJJeDY0IlxuIiwKJmd0 OyZndDsgKwkJCQlwb3J0aWQsIGxvY2FsX3BvcnRfY29uZi5yeG1vZGUub2ZmbG9hZHMsCiZndDsm Z3Q7ICsJCQkJZGV2X2luZm8ucnhfb2ZmbG9hZF9jYXBhKTsKJmd0OyZndDsgKwkJCWlmIChyZWxh eF9yeF9tb2RlKSB7CiZndDsmZ3Q7ICsJCQkJbG9jYWxfcG9ydF9jb25mLnJ4bW9kZS5vZmZsb2Fk cyAmYW1wOz0gZGV2X2luZm8ucnhfb2ZmbG9hZF9jYXBhOwomZ3Q7Jmd0OyArCQkJCXByaW50Zigi d2FybmluZzogbW9kaWZpZWQgdGhlIHJ4IG9mZmxvYWQgdG8gMHglIlBSSXg2NCIgYmFzZWQgb24g ZGV2aWNlIgomZ3Q7Jmd0OyArCQkJCSIgY2FwYWJpbGl0eVxuIiwgbG9jYWxfcG9ydF9jb25mLnJ4 bW9kZS5vZmZsb2Fkcyk7CiZndDsmZ3Q7ICsJCQl9CiZndDsmZ3Q7ICsJCX0KJmd0OyZndDsgKwom Z3Q7Jmd0OyAgIAkJcmV0ID0gcnRlX2V0aF9kZXZfY29uZmlndXJlKHBvcnRpZCwgbmJfcnhfcXVl dWUsCiZndDsmZ3Q7ICAgCQkJCQkodWludDE2X3Qpbl90eF9xdWV1ZSwgJmFtcDtsb2NhbF9wb3J0 X2NvbmYpOwomZ3Q7Jmd0OyAgIAkJaWYgKHJldCAmbHQ7IDApCiZndDsKJmd0O2lmIHlvdSBnb2lu ZyB0byBzdWJtaXQgbmV3IHZlcnNpb24sIHBscyBkb24ndCBmb3JnZXQgdG8gYnVtcCB0aGUgdmVy c2lvbiAKPGRpdj4mZ3Q7bnVtYmVyIG9mIHRoZSBwYXRjaC48L2Rpdj48ZGl2Pjxicj48L2Rpdj48 ZGl2PjxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU0LCAxMzIsIDE1KTsiPjxi PiZndDtPSywgSSB3aWxsIGNoZWNrIGl0LjwvYj48L3NwYW4+PC9kaXY+PGRpdj48c3BhbiBzdHls ZT0iYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NCwgMTMyLCAxNSk7Ij48Yj5UaGFua3MuPC9iPjwv c3Bhbj48L2Rpdj48L3ByZT48L2Rpdj4= ------=_Part_106592_1302144890.1697127273416--