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 7F977A0A02; Fri, 15 Jan 2021 04:51:34 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id EA3E9140EEF; Fri, 15 Jan 2021 04:51:33 +0100 (CET) Received: from m136.mail.163.com (m136.mail.163.com [220.181.13.6]) by mails.dpdk.org (Postfix) with ESMTP id B88C0140ED8 for ; Fri, 15 Jan 2021 04:51:31 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=Date:From:Subject:MIME-Version:Message-ID; bh=1JlvJ mkL3n88QxeFSEyq2CuW38nD8FW3S1IWziEJ5Rs=; b=krKA25301TGNJ8gFeM0ij GobZ3PXa68IGNxOyeu1e2UTh8ql1Ja2MFL/G3kM8u2BRMBsaNnS0uxh2VDhaD3kr 6WGNUSxkFYomugKQo77+EGBalXAY/juY2slC1Y6UJN6BiynqjRoQz6hL7ZC3W/Uo BReq+DUtlccW0pLBeTmBqo= Received: from yang_y_yi$163.com ( [111.207.123.53] ) by ajax-webmail-wmsvr6 (Coremail) ; Fri, 15 Jan 2021 11:51:25 +0800 (CST) X-Originating-IP: [111.207.123.53] Date: Fri, 15 Jan 2021 11:51:25 +0800 (CST) From: yang_y_yi To: "Thomas Monjalon" Cc: "dev@dpdk.org" , "yangyi01@inspur.com" , "jiayu.hu@intel.com" X-Priority: 1 X-Mailer: Coremail Webmail Server Version XT5.0.13 build 20201118(ab4b390f) Copyright (c) 2002-2021 www.mailtech.cn 163com In-Reply-To: <5c7751726a1f45299f99e9ccc13fb5e1@intel.com> References: <20201116011112.13676-1-yang_y_yi@163.com> <20201119064331.55660-1-yang_y_yi@163.com> <5c7751726a1f45299f99e9ccc13fb5e1@intel.com> X-CM-CTRLDATA: nMFkJmZvb3Rlcl9odG09MTM2MzE6NTY= MIME-Version: 1.0 Message-ID: <59bcdd65.2506.177042b5666.Coremail.yang_y_yi@163.com> X-Coremail-Locale: zh_CN X-CM-TRANSID: BsGowABX1XE9EQFgwlqxAA--.59970W X-CM-SenderInfo: 51dqwsp1b1xqqrwthudrp/1tbiFg0bi144O1kV+wACsj X-Coremail-Antispam: 1U5529EdanIXcx71UUUUU7vcSsGvfC2KfnxnUU== Content-Type: text/plain; charset=GBK Content-Transfer-Encoding: base64 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: Re: [dpdk-dev] [PATCH v4] gso: add VXLAN UDP/IPv4 support 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 Sender: "dev" CgpBdCAyMDIwLTExLTE5IDE0OjQ5OjIzLCAiSHUsIEppYXl1IiA8amlheXUuaHVAaW50ZWwuY29t PiB3cm90ZToKPkFja2VkLWJ5OiBKaWF5dSBIdSA8amlheXUuaHVAaW50ZWwuY29tPgoKSGksIFRo b21hcwoKVGhpcyBwYXRjaCBoYXMgYmVlbiBhY2tlZCB2ZXJ5IGxvbmcsIGJ1dCBpdCBpc24ndCBt ZXJnZWQgaW50byBtYXN0ZXIsIHdoYXQncyB3cm9uZz8KCj4KPj4gLS0tLS1PcmlnaW5hbCBNZXNz YWdlLS0tLS0KPj4gRnJvbTogeWFuZ195X3lpQDE2My5jb20gPHlhbmdfeV95aUAxNjMuY29tPgo+ PiBTZW50OiBUaHVyc2RheSwgTm92ZW1iZXIgMTksIDIwMjAgMjo0NCBQTQo+PiBUbzogZGV2QGRw ZGsub3JnCj4+IENjOiBIdSwgSmlheXUgPGppYXl1Lmh1QGludGVsLmNvbT47IHRob21hc0Btb25q YWxvbi5uZXQ7Cj4+IHlhbmd5aTAxQGluc3B1ci5jb207IHlhbmdfeV95aUAxNjMuY29tCj4+IFN1 YmplY3Q6IFtQQVRDSCB2NF0gZ3NvOiBhZGQgVlhMQU4gVURQL0lQdjQgc3VwcG9ydAo+PiAKPj4g RnJvbTogWWkgWWFuZyA8eWFuZ3lpMDFAaW5zcHVyLmNvbT4KPj4gCj4+IEFzIG1vc3QgTklDcyBk byBub3Qgc3VwcG9ydCBzZWdtZW50YXRpb24gZm9yIFZYTEFOLWVuY2Fwc3VsYXRlZAo+PiBVRFAv SVB2NCBwYWNrZXRzLCB0aGlzIHBhdGNoIGFkZHMgVlhMQU4gVURQL0lQdjQgR1NPIHN1cHBvcnQu Cj4+IE9WUyBEUERLIGNhbiBzaWduaWZpY2FudGx5IGltcHJvdmUgVlhMQU4gVURQL0lQdjQgcGVy Zm9ybWFuY2UgYnkKPj4gVlhMQU4gVURQL0lQdjQgR1NPLgo+PiAKPj4gU2lnbmVkLW9mZi1ieTog WWkgWWFuZyA8eWFuZ3lpMDFAaW5zcHVyLmNvbT4KPj4gLS0tCj4+IENoYW5nZWxvZzoKPj4gCj4+ IHYzIC0+IHY0Ogo+PiAgIC0gVXNlIG1vcmUgcHJlY2lzZSBjb21taXQgc3ViamVjdCBhbmQgbG9n Cj4+ICAgLSBDb3JyZWN0IFZ4TEFOIHRvIFZYTEFOIChodHRwczovL3Rvb2xzLmlldGYub3JnL2h0 bWwvcmZjNzM0OCkKPj4gCj4+IHYyIC0+IHYzOgo+PiAgIC0gQ29ycmVjdCBnc28gdHlwZSBjaGVj ayBmb3IgVURQIFRTTy4KPj4gCj4+IHYxIC0+IHYyOgo+PiAgIC0gUmVtb3ZlIGNvbmRpdGlvbiBj aGVjayBmb3Igb3V0ZXIgdWRwIGhlYWRlciBiZWNhdXNlIGl0Cj4+ICAgICBpcyBhbHdheXMgdHJ1 ZSBmb3IgVlhMQU4uCj4+ICAgLSBSZW1vdmUgaW5uZXIgdWRwIGhlYWRlciB1cGRhdGUgYmVjYXVz ZSBpdCBpcyB3cm9uZyBhbmQKPj4gICAgIHVubmVjZXNzYXJ5Lgo+PiAKPj4gLS0tCj4+ICAuLi4v Z2VuZXJpY19zZWdtZW50YXRpb25fb2ZmbG9hZF9saWIucnN0ICAgICAgICAgICB8IDE4ICsrLS0K Pj4gIGRvYy9ndWlkZXMvcmVsX25vdGVzL3JlbGVhc2VfMjBfMTEucnN0ICAgICAgICAgICAgIHwg IDQgKwo+PiAgbGliL2xpYnJ0ZV9nc28vZ3NvX2NvbW1vbi5oICAgICAgICAgICAgICAgICAgICAg ICAgfCAgNSArKwo+PiAgbGliL2xpYnJ0ZV9nc28vZ3NvX3R1bm5lbF91ZHA0LmMgICAgICAgICAg ICAgICAgICAgfCA5NyArKysrKysrKysrKysrKysrKysrKysrCj4+ICBsaWIvbGlicnRlX2dzby9n c29fdHVubmVsX3VkcDQuaCAgICAgICAgICAgICAgICAgICB8IDQ0ICsrKysrKysrKysKPj4gIGxp Yi9saWJydGVfZ3NvL21lc29uLmJ1aWxkICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0K Pj4gIGxpYi9saWJydGVfZ3NvL3J0ZV9nc28uYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg IDggKysKPj4gIDcgZmlsZXMgY2hhbmdlZCwgMTY4IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9u cygtKQo+PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYi9saWJydGVfZ3NvL2dzb190dW5uZWxfdWRw NC5jCj4+ICBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL2xpYnJ0ZV9nc28vZ3NvX3R1bm5lbF91ZHA0 LmgKPj4gCj4+IGRpZmYgLS1naXQgYS9kb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvZ2VuZXJpY19zZWdt ZW50YXRpb25fb2ZmbG9hZF9saWIucnN0Cj4+IGIvZG9jL2d1aWRlcy9wcm9nX2d1aWRlL2dlbmVy aWNfc2VnbWVudGF0aW9uX29mZmxvYWRfbGliLnJzdAo+PiBpbmRleCBhZDkxYzZlLi43YmZmMGFl IDEwMDY0NAo+PiAtLS0gYS9kb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvZ2VuZXJpY19zZWdtZW50YXRp b25fb2ZmbG9hZF9saWIucnN0Cj4+ICsrKyBiL2RvYy9ndWlkZXMvcHJvZ19ndWlkZS9nZW5lcmlj X3NlZ21lbnRhdGlvbl9vZmZsb2FkX2xpYi5yc3QKPj4gQEAgLTQ1LDggKzQ1LDggQEAgTGltaXRh dGlvbnMKPj4gCj4+ICAgLSBUQ1AKPj4gICAtIFVEUAo+PiAtIC0gVnhMQU4KPj4gLSAtIEdSRQo+ PiArIC0gVlhMQU4KPj4gKyAtIEdSRSBUQ1AKPj4gCj4+ICAgIFNlZSBgU3VwcG9ydGVkIEdTTyBQ YWNrZXQgVHlwZXNgXyBmb3IgZnVydGhlciBkZXRhaWxzLgo+PiAKPj4gQEAgLTE1NywxNCArMTU3 LDE0IEBAIGRvZXMgbm90IG1vZGlmeSBpdCBkdXJpbmcgc2VnbWVudGF0aW9uLiBUaGVyZWZvcmUs Cj4+IGFmdGVyIFVEUCBHU08sIG9ubHkgdGhlCj4+ICBmaXJzdCBvdXRwdXQgcGFja2V0IGhhcyB0 aGUgb3JpZ2luYWwgVURQIGhlYWRlciwgYW5kIG90aGVycyBqdXN0IGhhdmUgbDIKPj4gIGFuZCBs MyBoZWFkZXJzLgo+PiAKPj4gLVZ4TEFOIEdTTwo+PiAtfn5+fn5+fn5+Cj4+IC1WeExBTiBwYWNr ZXRzIEdTTyBzdXBwb3J0cyBzZWdtZW50YXRpb24gb2Ygc3VpdGFibHkgbGFyZ2UgVnhMQU4gcGFj a2V0cywKPj4gLXdoaWNoIGNvbnRhaW4gYW4gb3V0ZXIgSVB2NCBoZWFkZXIsIGlubmVyIFRDUC9J UHY0IGhlYWRlcnMsIGFuZCBvcHRpb25hbAo+PiAtaW5uZXIgYW5kL29yIG91dGVyIFZMQU4gdGFn KHMpLgo+PiArVlhMQU4gSVB2NCBHU08KPj4gK35+fn5+fn5+fn5+fn5+Cj4+ICtWWExBTiBwYWNr ZXRzIEdTTyBzdXBwb3J0cyBzZWdtZW50YXRpb24gb2Ygc3VpdGFibHkgbGFyZ2UgVlhMQU4gcGFj a2V0cywKPj4gK3doaWNoIGNvbnRhaW4gYW4gb3V0ZXIgSVB2NCBoZWFkZXIsIGlubmVyIFRDUC9J UHY0IG9yIFVEUC9JUHY0IGhlYWRlcnMsCj4+IGFuZAo+PiArb3B0aW9uYWwgaW5uZXIgYW5kL29y IG91dGVyIFZMQU4gdGFnKHMpLgo+PiAKPj4gLUdSRSBHU08KPj4gLX5+fn5+fn4KPj4gK0dSRSBU Q1AvSVB2NCBHU08KPj4gK35+fn5+fn5+fn5+fn5+fn4KPj4gIEdSRSBHU08gc3VwcG9ydHMgc2Vn bWVudGF0aW9uIG9mIHN1aXRhYmx5IGxhcmdlIEdSRSBwYWNrZXRzLCB3aGljaAo+PiBjb250YWlu Cj4+ICBhbiBvdXRlciBJUHY0IGhlYWRlciwgaW5uZXIgVENQL0lQdjQgaGVhZGVycywgYW5kIGFu IG9wdGlvbmFsIFZMQU4gdGFnLgo+PiAKPj4gZGlmZiAtLWdpdCBhL2RvYy9ndWlkZXMvcmVsX25v dGVzL3JlbGVhc2VfMjBfMTEucnN0Cj4+IGIvZG9jL2d1aWRlcy9yZWxfbm90ZXMvcmVsZWFzZV8y MF8xMS5yc3QKPj4gaW5kZXggMjRjZWRiYS4uMDRhYmEzMyAxMDA2NDQKPj4gLS0tIGEvZG9jL2d1 aWRlcy9yZWxfbm90ZXMvcmVsZWFzZV8yMF8xMS5yc3QKPj4gKysrIGIvZG9jL2d1aWRlcy9yZWxf bm90ZXMvcmVsZWFzZV8yMF8xMS5yc3QKPj4gQEAgLTQyMiw2ICs0MjIsMTAgQEAgTmV3IEZlYXR1 cmVzCj4+ICAgIGxldmVyYWdlIElPQVQgRE1BIGNoYW5uZWwgd2l0aCB2aG9zdCBhc3luY2hyb25v dXMgQVBJcy4KPj4gICAgU2VlIHRoZSA6ZG9jOmAuLi9zYW1wbGVfYXBwX3VnL3Zob3N0YCBmb3Ig bW9yZSBkZXRhaWxzLgo+PiAKPj4gKyogKipBZGRlZCBWWExBTiBVRFAvSVB2NCBHU08gc3VwcG9y dC4qKgo+PiArCj4+ICsgIEFkZGVkIGlubmVyIFVEUC9JUHY0IHN1cHBvcnQgZm9yIFZYTEFOIElQ djQgR1NPLgo+PiArCj4+IAo+PiAgUmVtb3ZlZCBJdGVtcwo+PiAgLS0tLS0tLS0tLS0tLQo+PiBk aWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9nc28vZ3NvX2NvbW1vbi5oIGIvbGliL2xpYnJ0ZV9nc28v Z3NvX2NvbW1vbi5oCj4+IGluZGV4IGEwYjgzNDMuLjRkNWYzMDMgMTAwNjQ0Cj4+IC0tLSBhL2xp Yi9saWJydGVfZ3NvL2dzb19jb21tb24uaAo+PiArKysgYi9saWIvbGlicnRlX2dzby9nc29fY29t bW9uLmgKPj4gQEAgLTI2LDYgKzI2LDExIEBACj4+ICAJCShQS1RfVFhfVENQX1NFRyB8IFBLVF9U WF9JUFY0IHwgUEtUX1RYX09VVEVSX0lQVjQgfCBcCj4+ICAJCSBQS1RfVFhfVFVOTkVMX1ZYTEFO KSkKPj4gCj4+ICsjZGVmaW5lIElTX0lQVjRfVlhMQU5fVURQNChmbGFnKSAoKChmbGFnKSAmIChQ S1RfVFhfVURQX1NFRyB8Cj4+IFBLVF9UWF9JUFY0IHwgXAo+PiArCQkJCVBLVF9UWF9PVVRFUl9J UFY0IHwKPj4gUEtUX1RYX1RVTk5FTF9NQVNLKSkgPT0gXAo+PiArCQkoUEtUX1RYX1VEUF9TRUcg fCBQS1RfVFhfSVBWNCB8IFBLVF9UWF9PVVRFUl9JUFY0IHwgXAo+PiArCQkgUEtUX1RYX1RVTk5F TF9WWExBTikpCj4+ICsKPj4gICNkZWZpbmUgSVNfSVBWNF9HUkVfVENQNChmbGFnKSAoKChmbGFn KSAmIChQS1RfVFhfVENQX1NFRyB8IFBLVF9UWF9JUFY0Cj4+IHwgXAo+PiAgCQkJCVBLVF9UWF9P VVRFUl9JUFY0IHwKPj4gUEtUX1RYX1RVTk5FTF9NQVNLKSkgPT0gXAo+PiAgCQkoUEtUX1RYX1RD UF9TRUcgfCBQS1RfVFhfSVBWNCB8IFBLVF9UWF9PVVRFUl9JUFY0IHwgXAo+PiBkaWZmIC0tZ2l0 IGEvbGliL2xpYnJ0ZV9nc28vZ3NvX3R1bm5lbF91ZHA0LmMKPj4gYi9saWIvbGlicnRlX2dzby9n c29fdHVubmVsX3VkcDQuYwo+PiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+PiBpbmRleCAwMDAwMDAw Li4xZmM3YThkCj4+IC0tLSAvZGV2L251bGwKPj4gKysrIGIvbGliL2xpYnJ0ZV9nc28vZ3NvX3R1 bm5lbF91ZHA0LmMKPj4gQEAgLTAsMCArMSw5NyBAQAo+PiArLyogU1BEWC1MaWNlbnNlLUlkZW50 aWZpZXI6IEJTRC0zLUNsYXVzZQo+PiArICogQ29weXJpZ2h0KGMpIDIwMjAgSW5zcHVyIENvcnBv cmF0aW9uCj4+ICsgKi8KPj4gKwo+PiArI2luY2x1ZGUgImdzb19jb21tb24uaCIKPj4gKyNpbmNs dWRlICJnc29fdHVubmVsX3VkcDQuaCIKPj4gKwo+PiArI2RlZmluZSBJUFY0X0hEUl9NRl9CSVQg KDFVIDw8IDEzKQo+PiArCj4+ICtzdGF0aWMgdm9pZAo+PiArdXBkYXRlX3R1bm5lbF9pcHY0X3Vk cF9oZWFkZXJzKHN0cnVjdCBydGVfbWJ1ZiAqcGt0LCBzdHJ1Y3QgcnRlX21idWYKPj4gKipzZWdz LAo+PiArCQkJICAgICAgIHVpbnQxNl90IG5iX3NlZ3MpCj4+ICt7Cj4+ICsJc3RydWN0IHJ0ZV9p cHY0X2hkciAqaXB2NF9oZHI7Cj4+ICsJdWludDE2X3Qgb3V0ZXJfaWQsIGlubmVyX2lkLCB0YWls X2lkeCwgaSwgbGVuZ3RoOwo+PiArCXVpbnQxNl90IG91dGVyX2lwdjRfb2Zmc2V0LCBpbm5lcl9p cHY0X29mZnNldDsKPj4gKwl1aW50MTZfdCBvdXRlcl91ZHBfb2Zmc2V0Owo+PiArCXVpbnQxNl90 IGZyYWdfb2Zmc2V0ID0gMCwgaXNfbWY7Cj4+ICsKPj4gKwlvdXRlcl9pcHY0X29mZnNldCA9IHBr dC0+b3V0ZXJfbDJfbGVuOwo+PiArCW91dGVyX3VkcF9vZmZzZXQgPSBvdXRlcl9pcHY0X29mZnNl dCArIHBrdC0+b3V0ZXJfbDNfbGVuOwo+PiArCWlubmVyX2lwdjRfb2Zmc2V0ID0gb3V0ZXJfdWRw X29mZnNldCArIHBrdC0+bDJfbGVuOwo+PiArCj4+ICsJLyogT3V0ZXIgSVB2NCBoZWFkZXIuICov Cj4+ICsJaXB2NF9oZHIgPSAoc3RydWN0IHJ0ZV9pcHY0X2hkciAqKShydGVfcGt0bWJ1Zl9tdG9k KHBrdCwgY2hhciAqKSArCj4+ICsJCQlvdXRlcl9pcHY0X29mZnNldCk7Cj4+ICsJb3V0ZXJfaWQg PSBydGVfYmVfdG9fY3B1XzE2KGlwdjRfaGRyLT5wYWNrZXRfaWQpOwo+PiArCj4+ICsJLyogSW5u ZXIgSVB2NCBoZWFkZXIuICovCj4+ICsJaXB2NF9oZHIgPSAoc3RydWN0IHJ0ZV9pcHY0X2hkciAq KShydGVfcGt0bWJ1Zl9tdG9kKHBrdCwgY2hhciAqKSArCj4+ICsJCQlpbm5lcl9pcHY0X29mZnNl dCk7Cj4+ICsJaW5uZXJfaWQgPSBydGVfYmVfdG9fY3B1XzE2KGlwdjRfaGRyLT5wYWNrZXRfaWQp Owo+PiArCj4+ICsJdGFpbF9pZHggPSBuYl9zZWdzIC0gMTsKPj4gKwo+PiArCWZvciAoaSA9IDA7 IGkgPCBuYl9zZWdzOyBpKyspIHsKPj4gKwkJdXBkYXRlX2lwdjRfaGVhZGVyKHNlZ3NbaV0sIG91 dGVyX2lwdjRfb2Zmc2V0LCBvdXRlcl9pZCk7Cj4+ICsJCXVwZGF0ZV91ZHBfaGVhZGVyKHNlZ3Nb aV0sIG91dGVyX3VkcF9vZmZzZXQpOwo+PiArCQl1cGRhdGVfaXB2NF9oZWFkZXIoc2Vnc1tpXSwg aW5uZXJfaXB2NF9vZmZzZXQsIGlubmVyX2lkKTsKPj4gKwkJLyogRm9yIHRoZSBjYXNlIGlubmVy IHBhY2tldCBpcyBVRFAsIHdlIG11c3Qga2VlcCBVRFAKPj4gKwkJICogZGF0YWdyYW0gYm91bmRh cnksIGl0IG11c3QgYmUgaGFuZGxlZCBhcyBJUCBmcmFnbWVudC4KPj4gKwkJICoKPj4gKwkJICog U2V0IElQIGZyYWdtZW50IG9mZnNldCBmb3IgaW5uZXIgSVAgaGVhZGVyLgo+PiArCQkgKi8KPj4g KwkJaXB2NF9oZHIgPSAoc3RydWN0IHJ0ZV9pcHY0X2hkciAqKQo+PiArCQkJKHJ0ZV9wa3RtYnVm X210b2Qoc2Vnc1tpXSwgY2hhciAqKSArCj4+ICsJCQkJaW5uZXJfaXB2NF9vZmZzZXQpOwo+PiAr CQlpc19tZiA9IGkgPCB0YWlsX2lkeCA/IElQVjRfSERSX01GX0JJVCA6IDA7Cj4+ICsJCWlwdjRf aGRyLT5mcmFnbWVudF9vZmZzZXQgPQo+PiArCQkJcnRlX2NwdV90b19iZV8xNihmcmFnX29mZnNl dCB8IGlzX21mKTsKPj4gKwkJbGVuZ3RoID0gc2Vnc1tpXS0+cGt0X2xlbiAtIGlubmVyX2lwdjRf b2Zmc2V0IC0gcGt0LT5sM19sZW47Cj4+ICsJCWZyYWdfb2Zmc2V0ICs9IChsZW5ndGggPj4gMyk7 Cj4+ICsJCW91dGVyX2lkKys7Cj4+ICsJfQo+PiArfQo+PiArCj4+ICtpbnQKPj4gK2dzb190dW5u ZWxfdWRwNF9zZWdtZW50KHN0cnVjdCBydGVfbWJ1ZiAqcGt0LAo+PiArCQl1aW50MTZfdCBnc29f c2l6ZSwKPj4gKwkJc3RydWN0IHJ0ZV9tZW1wb29sICpkaXJlY3RfcG9vbCwKPj4gKwkJc3RydWN0 IHJ0ZV9tZW1wb29sICppbmRpcmVjdF9wb29sLAo+PiArCQlzdHJ1Y3QgcnRlX21idWYgKipwa3Rz X291dCwKPj4gKwkJdWludDE2X3QgbmJfcGt0c19vdXQpCj4+ICt7Cj4+ICsJc3RydWN0IHJ0ZV9p cHY0X2hkciAqaW5uZXJfaXB2NF9oZHI7Cj4+ICsJdWludDE2X3QgcHlsZF91bml0X3NpemUsIGhk cl9vZmZzZXQsIGZyYWdfb2ZmOwo+PiArCWludCByZXQ7Cj4+ICsKPj4gKwloZHJfb2Zmc2V0ID0g cGt0LT5vdXRlcl9sMl9sZW4gKyBwa3QtPm91dGVyX2wzX2xlbiArIHBrdC0+bDJfbGVuOwo+PiAr CWlubmVyX2lwdjRfaGRyID0gKHN0cnVjdCBydGVfaXB2NF9oZHIgKikocnRlX3BrdG1idWZfbXRv ZChwa3QsCj4+IGNoYXIgKikgKwo+PiArCQkJaGRyX29mZnNldCk7Cj4+ICsJLyoKPj4gKwkgKiBE b24ndCBwcm9jZXNzIHRoZSBwYWNrZXQgd2hvc2UgTUYgYml0IG9yIG9mZnNldCBpbiB0aGUgaW5u ZXIKPj4gKwkgKiBJUHY0IGhlYWRlciBhcmUgbm9uLXplcm8uCj4+ICsJICovCj4+ICsJZnJhZ19v ZmYgPSBydGVfYmVfdG9fY3B1XzE2KGlubmVyX2lwdjRfaGRyLT5mcmFnbWVudF9vZmZzZXQpOwo+ PiArCWlmICh1bmxpa2VseShJU19GUkFHTUVOVEVEKGZyYWdfb2ZmKSkpCj4+ICsJCXJldHVybiAw Owo+PiArCj4+ICsJaGRyX29mZnNldCArPSBwa3QtPmwzX2xlbjsKPj4gKwkvKiBEb24ndCBwcm9j ZXNzIHRoZSBwYWNrZXQgd2l0aG91dCBkYXRhICovCj4+ICsJaWYgKChoZHJfb2Zmc2V0ICsgcGt0 LT5sNF9sZW4pID49IHBrdC0+cGt0X2xlbikKPj4gKwkJcmV0dXJuIDA7Cj4+ICsKPj4gKwkvKiBw eWxkX3VuaXRfc2l6ZSBtdXN0IGJlIGEgbXVsdGlwbGUgb2YgOCBiZWNhdXNlIGZyYWdfb2ZmCj4+ ICsJICogdXNlcyA4IGJ5dGVzIGFzIHVuaXQuCj4+ICsJICovCj4+ICsJcHlsZF91bml0X3NpemUg PSAoZ3NvX3NpemUgLSBoZHJfb2Zmc2V0KSAmIH43VTsKPj4gKwo+PiArCS8qIFNlZ21lbnQgdGhl IHBheWxvYWQgKi8KPj4gKwlyZXQgPSBnc29fZG9fc2VnbWVudChwa3QsIGhkcl9vZmZzZXQsIHB5 bGRfdW5pdF9zaXplLCBkaXJlY3RfcG9vbCwKPj4gKwkJCWluZGlyZWN0X3Bvb2wsIHBrdHNfb3V0 LCBuYl9wa3RzX291dCk7Cj4+ICsJaWYgKHJldCA+IDEpCj4+ICsJCXVwZGF0ZV90dW5uZWxfaXB2 NF91ZHBfaGVhZGVycyhwa3QsIHBrdHNfb3V0LCByZXQpOwo+PiArCj4+ICsJcmV0dXJuIHJldDsK Pj4gK30KPj4gZGlmZiAtLWdpdCBhL2xpYi9saWJydGVfZ3NvL2dzb190dW5uZWxfdWRwNC5oCj4+ IGIvbGliL2xpYnJ0ZV9nc28vZ3NvX3R1bm5lbF91ZHA0LmgKPj4gbmV3IGZpbGUgbW9kZSAxMDA2 NDQKPj4gaW5kZXggMDAwMDAwMC4uYzQ5YjQzZgo+PiAtLS0gL2Rldi9udWxsCj4+ICsrKyBiL2xp Yi9saWJydGVfZ3NvL2dzb190dW5uZWxfdWRwNC5oCj4+IEBAIC0wLDAgKzEsNDQgQEAKPj4gKy8q IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKPj4gKyAqIENvcHlyaWdodChj KSAyMDIwIEluc3B1ciBDb3Jwb3JhdGlvbgo+PiArICovCj4+ICsKPj4gKyNpZm5kZWYgX0dTT19U VU5ORUxfVURQNF9IXwo+PiArI2RlZmluZSBfR1NPX1RVTk5FTF9VRFA0X0hfCj4+ICsKPj4gKyNp bmNsdWRlIDxzdGRpbnQuaD4KPj4gKyNpbmNsdWRlIDxydGVfbWJ1Zi5oPgo+PiArCj4+ICsvKioK Pj4gKyAqIFNlZ21lbnQgYSB0dW5uZWxpbmcgcGFja2V0IHdpdGggaW5uZXIgVURQL0lQdjQgaGVh ZGVycy4gVGhpcyBmdW5jdGlvbgo+PiArICogZG9lcyBub3QgY2hlY2sgaWYgdGhlIGlucHV0IHBh Y2tldCBoYXMgY29ycmVjdCBjaGVja3N1bXMsIGFuZCBkb2VzIG5vdAo+PiArICogdXBkYXRlIGNo ZWNrc3VtcyBmb3Igb3V0cHV0IEdTTyBzZWdtZW50cy4gRnVydGhlcm1vcmUsIGl0IGRvZXMgbm90 Cj4+ICsgKiBwcm9jZXNzIElQIGZyYWdtZW50IHBhY2tldHMuCj4+ICsgKgo+PiArICogQHBhcmFt IHBrdAo+PiArICogIFRoZSBwYWNrZXQgbWJ1ZiB0byBzZWdtZW50Lgo+PiArICogQHBhcmFtIGdz b19zaXplCj4+ICsgKiAgVGhlIG1heCBsZW5ndGggb2YgYSBHU08gc2VnbWVudCwgbWVhc3VyZWQg aW4gYnl0ZXMuCj4+ICsgKiBAcGFyYW0gZGlyZWN0X3Bvb2wKPj4gKyAqICBNQlVGIHBvb2wgdXNl ZCBmb3IgYWxsb2NhdGluZyBkaXJlY3QgYnVmZmVycyBmb3Igb3V0cHV0IHNlZ21lbnRzLgo+PiAr ICogQHBhcmFtIGluZGlyZWN0X3Bvb2wKPj4gKyAqICBNQlVGIHBvb2wgdXNlZCBmb3IgYWxsb2Nh dGluZyBpbmRpcmVjdCBidWZmZXJzIGZvciBvdXRwdXQgc2VnbWVudHMuCj4+ICsgKiBAcGFyYW0g cGt0c19vdXQKPj4gKyAqICBQb2ludGVyIGFycmF5IHVzZWQgdG8gc3RvcmUgdGhlIE1CVUYgYWRk cmVzc2VzIG9mIG91dHB1dCBHU08KPj4gKyAqICBzZWdtZW50cywgd2hlbiBpdCBzdWNjZWVkcy4g SWYgdGhlIG1lbW9yeSBzcGFjZSBpbiBwa3RzX291dCBpcwo+PiArICogIGluc3VmZmljaWVudCwg aXQgZmFpbHMgYW5kIHJldHVybnMgLUVJTlZBTC4KPj4gKyAqIEBwYXJhbSBuYl9wa3RzX291dAo+ PiArICogIFRoZSBtYXggbnVtYmVyIG9mIGl0ZW1zIHRoYXQgJ3BrdHNfb3V0JyBjYW4ga2VlcC4K Pj4gKyAqCj4+ICsgKiBAcmV0dXJuCj4+ICsgKiAgIC0gVGhlIG51bWJlciBvZiBHU08gc2VnbWVu dHMgZmlsbGVkIGluIHBrdHNfb3V0IG9uIHN1Y2Nlc3MuCj4+ICsgKiAgIC0gUmV0dXJuIDAgaWYg aXQgbmVlZG4ndCBHU08uCj4+ICsgKiAgIC0gUmV0dXJuIC1FTk9NRU0gaWYgcnVuIG91dCBvZiBt ZW1vcnkgaW4gTUJVRiBwb29scy4KPj4gKyAqICAgLSBSZXR1cm4gLUVJTlZBTCBmb3IgaW52YWxp ZCBwYXJhbWV0ZXJzLgo+PiArICovCj4+ICtpbnQgZ3NvX3R1bm5lbF91ZHA0X3NlZ21lbnQoc3Ry dWN0IHJ0ZV9tYnVmICpwa3QsCj4+ICsJCXVpbnQxNl90IGdzb19zaXplLAo+PiArCQlzdHJ1Y3Qg cnRlX21lbXBvb2wgKmRpcmVjdF9wb29sLAo+PiArCQlzdHJ1Y3QgcnRlX21lbXBvb2wgKmluZGly ZWN0X3Bvb2wsCj4+ICsJCXN0cnVjdCBydGVfbWJ1ZiAqKnBrdHNfb3V0LAo+PiArCQl1aW50MTZf dCBuYl9wa3RzX291dCk7Cj4+ICsjZW5kaWYKPj4gZGlmZiAtLWdpdCBhL2xpYi9saWJydGVfZ3Nv L21lc29uLmJ1aWxkIGIvbGliL2xpYnJ0ZV9nc28vbWVzb24uYnVpbGQKPj4gaW5kZXggYWQ4ZGQ4 NS4uMDU5MDRmMiAxMDA2NDQKPj4gLS0tIGEvbGliL2xpYnJ0ZV9nc28vbWVzb24uYnVpbGQKPj4g KysrIGIvbGliL2xpYnJ0ZV9nc28vbWVzb24uYnVpbGQKPj4gQEAgLTIsNiArMiw2IEBACj4+ICAj IENvcHlyaWdodChjKSAyMDE3IEludGVsIENvcnBvcmF0aW9uCj4+IAo+PiAgc291cmNlcyA9IGZp bGVzKCdnc29fY29tbW9uLmMnLCAnZ3NvX3RjcDQuYycsICdnc29fdWRwNC5jJywKPj4gLSAJCSdn c29fdHVubmVsX3RjcDQuYycsICdydGVfZ3NvLmMnKQo+PiArCQknZ3NvX3R1bm5lbF90Y3A0LmMn LCAnZ3NvX3R1bm5lbF91ZHA0LmMnLCAncnRlX2dzby5jJykKPj4gIGhlYWRlcnMgPSBmaWxlcygn cnRlX2dzby5oJykKPj4gIGRlcHMgKz0gWydldGhkZXYnXQo+PiBkaWZmIC0tZ2l0IGEvbGliL2xp YnJ0ZV9nc28vcnRlX2dzby5jIGIvbGliL2xpYnJ0ZV9nc28vcnRlX2dzby5jCj4+IGluZGV4IDg5 NjM1MGUuLjBkMDJlYzMgMTAwNjQ0Cj4+IC0tLSBhL2xpYi9saWJydGVfZ3NvL3J0ZV9nc28uYwo+ PiArKysgYi9saWIvbGlicnRlX2dzby9ydGVfZ3NvLmMKPj4gQEAgLTExLDYgKzExLDcgQEAKPj4g ICNpbmNsdWRlICJnc29fY29tbW9uLmgiCj4+ICAjaW5jbHVkZSAiZ3NvX3RjcDQuaCIKPj4gICNp bmNsdWRlICJnc29fdHVubmVsX3RjcDQuaCIKPj4gKyNpbmNsdWRlICJnc29fdHVubmVsX3VkcDQu aCIKPj4gICNpbmNsdWRlICJnc29fdWRwNC5oIgo+PiAKPj4gICNkZWZpbmUgSUxMRUdBTF9VRFBf R1NPX0NUWChjdHgpIFwKPj4gQEAgLTYwLDYgKzYxLDEzIEBACj4+ICAJCXJldCA9IGdzb190dW5u ZWxfdGNwNF9zZWdtZW50KHBrdCwgZ3NvX3NpemUsIGlwaWRfZGVsdGEsCj4+ICAJCQkJZGlyZWN0 X3Bvb2wsIGluZGlyZWN0X3Bvb2wsCj4+ICAJCQkJcGt0c19vdXQsIG5iX3BrdHNfb3V0KTsKPj4g Kwl9IGVsc2UgaWYgKElTX0lQVjRfVlhMQU5fVURQNChwa3QtPm9sX2ZsYWdzKSAmJgo+PiArCQkJ KGdzb19jdHgtPmdzb190eXBlcyAmCj4+IERFVl9UWF9PRkZMT0FEX1ZYTEFOX1ROTF9UU08pICYm Cj4+ICsJCQkoZ3NvX2N0eC0+Z3NvX3R5cGVzICYgREVWX1RYX09GRkxPQURfVURQX1RTTykpCj4+ IHsKPj4gKwkJcGt0LT5vbF9mbGFncyAmPSAoflBLVF9UWF9VRFBfU0VHKTsKPj4gKwkJcmV0ID0g Z3NvX3R1bm5lbF91ZHA0X3NlZ21lbnQocGt0LCBnc29fc2l6ZSwKPj4gKwkJCQlkaXJlY3RfcG9v bCwgaW5kaXJlY3RfcG9vbCwKPj4gKwkJCQlwa3RzX291dCwgbmJfcGt0c19vdXQpOwo+PiAgCX0g ZWxzZSBpZiAoSVNfSVBWNF9UQ1AocGt0LT5vbF9mbGFncykgJiYKPj4gIAkJCShnc29fY3R4LT5n c29fdHlwZXMgJiBERVZfVFhfT0ZGTE9BRF9UQ1BfVFNPKSkKPj4gewo+PiAgCQlwa3QtPm9sX2Zs YWdzICY9ICh+UEtUX1RYX1RDUF9TRUcpOwo+PiAtLQo+PiAxLjguMy4xCgoK