From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 609A2A04E7; Thu, 5 Nov 2020 17:30:09 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id B98462C16; Thu, 5 Nov 2020 17:30:07 +0100 (CET) Received: from smartserver.smartsharesystems.com (smartserver.smartsharesystems.com [77.243.40.215]) by dpdk.org (Postfix) with ESMTP id 6F2EB2BFF for ; Thu, 5 Nov 2020 17:30:05 +0100 (CET) Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Date: Thu, 5 Nov 2020 17:30:03 +0100 X-MimeOLE: Produced By Microsoft Exchange V6.5 Message-ID: <98CBD80474FA8B44BF855DF32C47DC35C613F7@smartserver.smartshare.dk> In-Reply-To: X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: [dpdk-dev] [PATCH] mbuf: fix reset on mbuf free Thread-Index: AQHWssw9/Ru+bbJv2UmxCtlz1ORQn6m4ql1ggAB/kQCAAAtLgIAADCkAgAAdJVCAABslAIAACA7wgAAGsgCAAAdYsIAAKuEw References: <20201104170007.8026-1-olivier.matz@6wind.com> <20201105074626.GL1898@platinum> <10b675b5-c376-746f-9ae2-210685b0b05d@oktetlabs.ru> <20201105091022.GO1898@platinum> <20201105123150.GP1898@platinum> <20201105132438.GS1898@platinum> From: =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= To: "Ananyev, Konstantin" , "Olivier Matz" Cc: "Andrew Rybchenko" , Subject: Re: [dpdk-dev] [PATCH] mbuf: fix reset on mbuf free X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" PiBGcm9tOiBkZXYgW21haWx0bzpkZXYtYm91bmNlc0BkcGRrLm9yZ10gT24gQmVoYWxmIE9mIEFu YW55ZXYsDQo+IEtvbnN0YW50aW4NCj4gU2VudDogVGh1cnNkYXksIE5vdmVtYmVyIDUsIDIwMjAg Mjo1NiBQTQ0KPiANCj4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+IE9uIFRodSwgTm92IDA1LCAyMDIw IGF0IDExOjM0OjE4QU0gKzAwMDAsIEFuYW55ZXYsIEtvbnN0YW50aW4NCj4gd3JvdGU6DQo+ID4g PiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gT24gVGh1LCBOb3YgMDUsIDIwMjAgYXQgMTE6 MjY6NTFBTSArMDMwMCwgQW5kcmV3IFJ5YmNoZW5rbw0KPiB3cm90ZToNCj4gPiA+ID4gPiA+ID4g T24gMTEvNS8yMCAxMDo0NiBBTSwgT2xpdmllciBNYXR6IHdyb3RlOg0KPiA+ID4gPiA+ID4gPiA+ IE9uIFRodSwgTm92IDA1LCAyMDIwIGF0IDEyOjE1OjQ5QU0gKzAwMDAsIEFuYW55ZXYsDQo+IEtv bnN0YW50aW4gd3JvdGU6DQo+ID4gPiA+ID4gPiA+ID4+DQo+ID4gPiA+ID4gPiA+ID4+IEhpIE9s aXZpZXIsDQo+ID4gPiA+ID4gPiA+ID4+DQo+ID4gPiA+ID4gPiA+ID4+PiBtLT5uYl9zZWcgbXVz dCBiZSByZXNldCBvbiBtYnVmIGZyZWUgd2hhdGV2ZXIgdGhlIHZhbHVlDQo+IG9mIG0tPm5leHQs DQo+ID4gPiA+ID4gPiA+ID4+PiBiZWNhdXNlIGl0IGNhbiBoYXBwZW4gdGhhdCBtLT5uYl9zZWcg aXMgIT0gMS4gRm9yDQo+IGluc3RhbmNlIGluIHRoaXMNCj4gPiA+ID4gPiA+ID4gPj4+IGNhc2U6 DQo+ID4gPiA+ID4gPiA+ID4+Pg0KPiA+ID4gPiA+ID4gPiA+Pj4gICBtMSA9IHJ0ZV9wa3RtYnVm X2FsbG9jKG1wKTsNCj4gPiA+ID4gPiA+ID4gPj4+ICAgcnRlX3BrdG1idWZfYXBwZW5kKG0xLCA1 MDApOw0KPiA+ID4gPiA+ID4gPiA+Pj4gICBtMiA9IHJ0ZV9wa3RtYnVmX2FsbG9jKG1wKTsNCj4g PiA+ID4gPiA+ID4gPj4+ICAgcnRlX3BrdG1idWZfYXBwZW5kKG0yLCA1MDApOw0KPiA+ID4gPiA+ ID4gPiA+Pj4gICBydGVfcGt0bWJ1Zl9jaGFpbihtMSwgbTIpOw0KPiA+ID4gPiA+ID4gPiA+Pj4g ICBtMCA9IHJ0ZV9wa3RtYnVmX2FsbG9jKG1wKTsNCj4gPiA+ID4gPiA+ID4gPj4+ICAgcnRlX3Br dG1idWZfYXBwZW5kKG0wLCA1MDApOw0KPiA+ID4gPiA+ID4gPiA+Pj4gICBydGVfcGt0bWJ1Zl9j aGFpbihtMCwgbTEpOw0KPiA+ID4gPiA+ID4gPiA+Pj4NCj4gPiA+ID4gPiA+ID4gPj4+IEFzIHJ0 ZV9wa3RtYnVmX2NoYWluKCkgZG9lcyBub3QgcmVzZXQgbmJfc2VnIGluIHRoZQ0KPiBpbml0aWFs IG0xDQo+ID4gPiA+ID4gPiA+ID4+PiBzZWdtZW50ICh0aGlzIGlzIG5vdCByZXF1aXJlZCksIGFm dGVyIHRoaXMgY29kZSB0aGUNCj4gbWJ1ZiBjaGFpbg0KPiA+ID4gPiA+ID4gPiA+Pj4gaGF2ZSAz IHNlZ21lbnRzOg0KPiA+ID4gPiA+ID4gPiA+Pj4gICAtIG0wOiBuZXh0PW0xLCBuYl9zZWc9Mw0K PiA+ID4gPiA+ID4gPiA+Pj4gICAtIG0xOiBuZXh0PW0yLCBuYl9zZWc9Mg0KPiA+ID4gPiA+ID4g PiA+Pj4gICAtIG0yOiBuZXh0PU5VTEwsIG5iX3NlZz0xDQo+ID4gPiA+ID4gPiA+ID4+Pg0KPiA+ ID4gPiA+ID4gPiA+Pj4gRnJlZWluZyB0aGlzIG1idWYgY2hhaW4gd2lsbCBub3QgcmVzdG9yZSBu Yl9zZWc9MSBpbg0KPiB0aGUgc2Vjb25kDQo+ID4gPiA+ID4gPiA+ID4+PiBzZWdtZW50Lg0KPiA+ ID4gPiA+ID4gPiA+Pg0KPiA+ID4gPiA+ID4gPiA+PiBIbW0sIG5vdCBzdXJlIHdoeSBpcyB0aGF0 Pw0KPiA+ID4gPiA+ID4gPiA+PiBZb3UgYXJlIHRhbGtpbmcgYWJvdXQgZnJlZWluZyBtMSwgcmln aHQ/DQo+ID4gPiA+ID4gPiA+ID4+IHJ0ZV9wa3RtYnVmX3ByZWZyZWVfc2VnKHN0cnVjdCBydGVf bWJ1ZiAqbSkNCj4gPiA+ID4gPiA+ID4gPj4gew0KPiA+ID4gPiA+ID4gPiA+PiAJLi4uDQo+ID4g PiA+ID4gPiA+ID4+IAlpZiAobS0+bmV4dCAhPSBOVUxMKSB7DQo+ID4gPiA+ID4gPiA+ID4+ICAg ICAgICAgICAgICAgICAgICAgICAgIG0tPm5leHQgPSBOVUxMOw0KPiA+ID4gPiA+ID4gPiA+PiAg ICAgICAgICAgICAgICAgICAgICAgICBtLT5uYl9zZWdzID0gMTsNCj4gPiA+ID4gPiA+ID4gPj4g ICAgICAgICAgICAgICAgIH0NCj4gPiA+ID4gPiA+ID4gPj4NCj4gPiA+ID4gPiA+ID4gPj4gbTEt Pm5leHQgIT0gTlVMTCwgc28gaXQgd2lsbCBlbnRlciB0aGUgaWYoKSBibG9jaywNCj4gPiA+ID4g PiA+ID4gPj4gYW5kIHdpbGwgcmVzZXQgYm90aCBuZXh0IGFuZCBuYl9zZWdzLg0KPiA+ID4gPiA+ ID4gPiA+PiBXaGF0IEkgYW0gbWlzc2luZyBoZXJlPw0KPiA+ID4gPiA+ID4gPiA+PiBUaGlua2lu ZyBpbiBtb3JlIGdlbmVyaWMgd2F5LCB0aGF0IGNoYW5nZToNCj4gPiA+ID4gPiA+ID4gPj4gIC0J CWlmIChtLT5uZXh0ICE9IE5VTEwpIHsNCj4gPiA+ID4gPiA+ID4gPj4gIC0JCQltLT5uZXh0ID0g TlVMTDsNCj4gPiA+ID4gPiA+ID4gPj4gIC0JCQltLT5uYl9zZWdzID0gMTsNCj4gPiA+ID4gPiA+ ID4gPj4gIC0JCX0NCj4gPiA+ID4gPiA+ID4gPj4gICsJCW0tPm5leHQgPSBOVUxMOw0KPiA+ID4g PiA+ID4gPiA+PiAgKwkJbS0+bmJfc2VncyA9IDE7DQo+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4g PiA+ID4gPiBBaCwgc29ycnkuIEkgb3ZlcnNpbXBsaWZpZWQgdGhlIGV4YW1wbGUgYW5kIG5vdyBp dCBkb2VzDQo+IG5vdA0KPiA+ID4gPiA+ID4gPiA+IHNob3cgdGhlIGlzc3VlLi4uDQo+ID4gPiA+ ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiBUaGUgZnVsbCBleGFtcGxlIGFsc28gYWRkcyBhIHNw bGl0KCkgdG8gYnJlYWsgdGhlIG1idWYNCj4gY2hhaW4NCj4gPiA+ID4gPiA+ID4gPiBiZXR3ZWVu IG0xIGFuZCBtMi4gVGhlIGtpbmQgb2YgdGhpbmcgdGhhdCB3b3VsZCBiZSBkb25lDQo+IGZvcg0K PiA+ID4gPiA+ID4gPiA+IHNvZnR3YXJlIFRDUCBzZWdtZW50YXRpb24uDQo+ID4gPiA+ID4gPiA+ ID4NCj4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gSWYgc28sIG1heSBiZSB0aGUgcmlnaHQg c29sdXRpb24gaXMgdG8gY2FyZSBhYm91dCBuYl9zZWdzDQo+ID4gPiA+ID4gPiA+IHdoZW4gbmV4 dCBpcyBzZXQgdG8gTlVMTCBvbiBzcGxpdD8gQW55IHBsYWNlIHdoZW4gbmV4dCBpcw0KPiBzZXQN Cj4gPiA+ID4gPiA+ID4gdG8gTlVMTC4gSnVzdCB0byBrZWVwIHRoZSBvcHRpbWl6YXRpb24gaW4g YSBtb3JlIGdlbmVyaWMNCj4gcGxhY2UuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ ID4gVGhlIHByb2JsZW0gd2l0aCB0aGF0IGFwcHJvYWNoIGlzIHRoYXQgdGhlcmUgYXJlIGFscmVh ZHkNCj4gc2V2ZXJhbA0KPiA+ID4gPiA+ID4gZXhpc3Rpbmcgc3BsaXQoKSBvciB0cmltKCkgaW1w bGVtZW50YXRpb25zIGluIGRpZmZlcmVudCBEUERLLQ0KPiBiYXNlZA0KPiA+ID4gPiA+ID4gYXBw bGljYXRpb25zLiBGb3IgaW5zdGFuY2UsIHdlIGhhdmUgc29tZSBpbiA2V0lOREdhdGUuIElmIHdl DQo+IGZvcmNlDQo+ID4gPiA+ID4gPiBhcHBsaWNhdGlvbnMgdG8gc2V0IG5iX3NlZyB0byAxIHdo ZW4gcmVzZXR0aW5nIG5leHQsIGl0IGhhcw0KPiB0byBiZQ0KPiA+ID4gPiA+ID4gZG9jdW1lbnRl ZCBiZWNhdXNlIGl0IGlzIG5vdCBzdHJhaWdodGZvcndhcmQuDQo+ID4gPiA+ID4NCj4gPiA+ID4g PiBJIHRoaW5rIGl0IGlzIGJldHRlciB0byBnbyB0aGF0IHdheS4NCj4gPiA+ID4gPiBGcm9tIG15 IHBlcnNwZWN0aXZlIGl0IHNlZW1zIG5hdHVyYWwgdG8gcmVzZXQgbmJfc2VnIGF0IHNhbWUNCj4g dGltZQ0KPiA+ID4gPiA+IHdlIHJlc2V0IG5leHQsIG90aGVyd2lzZSBpbmNvbnNpc3RlbmN5IHdp bGwgb2NjdXIuDQo+ID4gPiA+DQo+ID4gPiA+IFdoaWxlIGl0IGlzIG5vdCBleHBsaWNpdGx5IHN0 YXRlZCBmb3IgbmJfc2VncywgdG8gbWUgaXQgd2FzIGNsZWFyDQo+IHRoYXQNCj4gPiA+ID4gbmJf c2VncyBpcyBvbmx5IHZhbGlkIGluIHRoZSBmaXJzdCBzZWdtZW50LCBsaWtlIGZvciBtYW55IGZp ZWxkcw0KPiAocG9ydCwNCj4gPiA+ID4gb2xfZmxhZ3MsIHZsYW4sIHJzcywgLi4uKS4NCj4gPiA+ ID4NCj4gPiA+ID4gSWYgd2Ugc2F5IHRoYXQgbmJfc2VncyBoYXMgdG8gYmUgdmFsaWQgaW4gYW55 IHNlZ21lbnRzLCBpdCBtZWFucw0KPiB0aGF0DQo+ID4gPiA+IGNoYWluKCkgb3Igc3BsaXQoKSB3 aWxsIGhhdmUgdG8gdXBkYXRlIGl0IGluIGFsbCBzZWdtZW50cywgd2hpY2gNCj4gaXMgbm90DQo+ ID4gPiA+IGVmZmljaWVudC4NCj4gPiA+DQo+ID4gPiBXaHkgaW4gYWxsPw0KPiA+ID4gV2UgY2Fu IHN0YXRlIHRoYXQgbmJfc2VncyBvbiBub24tZmlyc3Qgc2VnbWVudCBzaG91bGQgYWx3YXlzIGVx dWFsDQo+IDEuDQo+ID4gPiBBcyBJIHVuZGVyc3RhbmQgaW4gdGhhdCBjYXNlLCBib3RoIHNwbGl0 KCkgYW5kIGNoYWluKCkgaGF2ZSB0bw0KPiB1cGRhdGUgbmJfc2Vncw0KPiA+ID4gb25seSBmb3Ig aGVhZCBtYnVmcywgcmVzdCBvbmVzIHdpbGwgcmVtYWluIHVudG91Y2hlZC4NCj4gPg0KPiA+IFdl bGwsIGFueXdheSwgSSB0aGluayBpdCdzIHN0cmFuZ2UgdG8gaGF2ZSBhIGNvbnN0cmFpbnQgb24g bS0+bmJfc2Vncw0KPiBmb3INCj4gPiBub24tZmlyc3Qgc2VnbWVudC4gV2UgZG9uJ3QgaGF2ZSB0 aGF0IGtpbmQgb2YgY29uc3RyYWludHMgZm9yIG90aGVyDQo+IGZpZWxkcy4NCj4gDQo+IFRydWUs IHdlIGRvbid0LiBCdXQgdGhpcyBpcyBvbmUgb2YgdGhlIGZpZWxkcyB3ZSBjb25zaWRlciBjcml0 aWNhbA0KPiBmb3IgcHJvcGVyIHdvcmsgb2YgbWJ1ZiBhbGxvYy9mcmVlIG1lY2hhbmlzbS4NCj4g DQoNCkkgYW0gbm90IHN1cmUgdGhhdCByZXF1aXJpbmcgbS0+bmJfc2VncyA9PSAxIG9uIG5vbi1m aXJzdCBzZWdtZW50cyB3aWxsIHByb3ZpZGUgYW55IGJlbmVmaXRzLg0KDQpFLmcuIHRoZSBzZWNv bmQgc2VnbWVudCBvZiBhIHRocmVlLXNlZ21lbnQgY2hhaW4gd2lsbCBzdGlsbCBoYXZlIG0tPm5l eHQgIT0gTlVMTCwgc28gaXQgY2Fubm90IGJlIHVzZWQgYXMgYSBnYXRlIHRvIHByZXZlbnQgYWNj ZXNzaW5nIG0tPm5leHQuDQoNCkkgbWlnaHQgaGF2ZSBvdmVybG9va2VkIHNvbWV0aGluZywgdGhv dWdoLg0KDQo+ID4NCj4gPg0KPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4gU2F5aW5nIHRoYXQgbmJf c2VncyBoYXMgdG8gYmUgdmFsaWQgZm9yIHRoZSBmaXJzdCBhbmQgbGFzdA0KPiBzZWdtZW50IHNl ZW1zDQo+ID4gPiA+IHJlYWxseSBvZGQgdG8gbWUuIFdoYXQgaXMgdGhlIGxvZ2ljIGJlaGluZCB0 aGF0IGV4Y2VwdCBrZWVwaW5nDQo+IHRoaXMgdGVzdA0KPiA+ID4gPiBhcyBpcz8NCj4gPiA+ID4N Cj4gPiA+ID4gSW4gYW55IGNhc2UsIGl0IGhhcyB0byBiZSBiZXR0ZXIgZG9jdW1lbnRlZC4NCj4g PiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4gT2xpdmllcg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4g PiA+ID4gSSB0aGluayB0aGUgYXBwcm9hY2ggZnJvbQ0KPiA+ID4gPiA+ID4gdGhpcyBwYXRjaCBp cyBzYWZlci4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IEl0IG1pZ2h0IGJlIGVhc2llciBmcm9tIHBl cnNwZWN0aXZlIHRoYXQgY2hhbmdlcyBpbiBsZXNzIHBsYWNlcw0KPiBhcmUgcmVxdWlyZWQsDQo+ ID4gPiA+ID4gVGhvdWdoIEkgdGhpbmsgdGhhdCB0aGlzIHBhdGNoIHdpbGwgaW50cm9kdWNlIHNv bWUgcGVyZm9ybWFuY2UNCj4gZHJvcC4NCj4gPiA+ID4gPiBBcyBub3cgZWFjaCBtYnVmX3ByZWZy ZWVfc2VnKCkgd2lsbCBjYXVzZSB1cGRhdGUgb2YgMiBjYWNoZQ0KPiBsaW5lcyB1bmNvbmRpdGlv bmFsbHkuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IEJ5IHRoZSB3YXksIGZvciAyMS4xMSwgaWYg d2UgYXJlIGFibGUgdG8gZG8gc29tZQ0KPiBvcHRpbWl6YXRpb25zIGFuZCBoYXZlDQo+ID4gPiA+ ID4gPiBib3RoIHBvb2wgKGluZGV4PykgYW5kIG5leHQgaW4gdGhlIGZpcnN0IGNhY2hlIGxpbmUs IHdlIG1heQ0KPiByZWNvbnNpZGVyDQo+ID4gPiA+ID4gPiB0aGUgZmFjdCB0aGF0IG5leHQgYW5k IG5iX3NlZ3MgYXJlIGFscmVhZHkgc2V0IGZvciBuZXcNCj4gYWxsb2NhdGVkIG1idWZzLA0KPiA+ ID4gPiA+ID4gYmVjYXVzZSBpdCBpcyBub3Qgc3RyYWlnaHRmb3J3YXJkIGVpdGhlci4NCj4gPiA+ ID4gPg0KPiA+ID4gPiA+IE15IHN1Z2dlc3Rpb24gLSBsZXQncyBwdXQgZnV0dXJlIG9wdGltaXph dGlvbiBkaXNjdXNzaW9uIGFzaWRlDQo+IGZvciBub3csDQo+ID4gPiA+ID4gYW5kIGNvbmNlbnRy YXRlIG9uIHRoYXQgcGFydGljdWxhciBwYXRjaC4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ID4NCj4g PiA+ID4gPiA+ID4gPiBBZnRlciB0aGlzIG9wZXJhdGlvbiwgd2UgaGF2ZSAyIG1idWYgY2hhaW46 DQo+ID4gPiA+ID4gPiA+ID4gIC0gbTAgd2l0aCAyIHNlZ21lbnRzLCB0aGUgbGFzdCBvbmUgaGFz IG5leHQ9TlVMTCBidXQNCj4gbmJfc2VnPTINCj4gPiA+ID4gPiA+ID4gPiAgLSBuZXdfbSB3aXRo IDEgc2VnbWVudA0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gRnJlZWluZyBtMCB3 aWxsIG5vdCByZXN0b3JlIG5iX3NlZz0xIGluIHRoZSBzZWNvbmQNCj4gc2VnbWVudC4NCj4gPiA+ ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+PiBBc3N1bWVzIHRoYXQgaXQgaXMgb2sgdG8gaGF2 ZSBhbiBtYnVmIHdpdGgNCj4gPiA+ID4gPiA+ID4gPj4gbmJfc2VnID4gMSBhbmQgbmV4dCA9PSBO VUxMLg0KPiA+ID4gPiA+ID4gPiA+PiBXaGljaCBzZWVtcyB3cm9uZyB0byBtZS4NCj4gPiA+ID4g PiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+IEkgZG9uJ3QgdGhpbmsgaXQgaXMgd3Jvbmc6IG5iX3Nl ZyBpcyBqdXN0IGlnbm9yZWQgd2hlbg0KPiBub3QgaW4gdGhlIGZpcnN0DQo+ID4gPiA+ID4gPiA+ ID4gc2VnbWVudCwgYW5kIHRoZXJlIGlzIG5vdGhpbmcgc2F5aW5nIGl0IHNob3VsZCBiZSBzZXQg dG8NCj4gMS4gVHlwaWNhbGx5LA0KPiA+ID4gPiA+ID4gPiA+IHJ0ZV9wa3RtYnVmX2NoYWluKCkg ZG9lcyBub3QgY2hhbmdlIGl0LCBhbmQgSSBndWVzcyBpdCdzDQo+IHRoZSBzYW1lIGZvcg0KPiA+ ID4gPiA+ID4gPiA+IG1hbnkgc2ltaWxhciBmdW5jdGlvbnMgaW4gYXBwbGljYXRpb25zLg0KPiA+ ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gT2xpdmllcg0KPiA+ID4gPiA+ID4gPiA+DQo+ ID4gPiA+ID4gPiA+ID4+DQo+ID4gPiA+ID4gPiA+ID4+DQo+ID4gPiA+ID4gPiA+ID4+PiBUaGlz IGlzIGV4cGVjdGVkIHRoYXQgbWJ1ZnMgc3RvcmVkIGluIHBvb2wgaGF2ZSB0aGVpcg0KPiA+ID4g PiA+ID4gPiA+Pj4gbmJfc2VnIGZpZWxkIHNldCB0byAxLg0KPiA+ID4gPiA+ID4gPiA+Pj4NCj4g PiA+ID4gPiA+ID4gPj4+IEZpeGVzOiA4ZjA5NGE5YWM1ZDcgKCJtYnVmOiBzZXQgbWJ1ZiBmaWVs ZHMgd2hpbGUgaW4NCj4gcG9vbCIpDQo+ID4gPiA+ID4gPiA+ID4+PiBDYzogc3RhYmxlQGRwZGsu b3JnDQo+ID4gPiA+ID4gPiA+ID4+Pg0KPiA+ID4gPiA+ID4gPiA+Pj4gU2lnbmVkLW9mZi1ieTog T2xpdmllciBNYXR6IDxvbGl2aWVyLm1hdHpANndpbmQuY29tPg0KPiA+ID4gPiA+ID4gPiA+Pj4g LS0tDQo+ID4gPiA+ID4gPiA+ID4+PiAgbGliL2xpYnJ0ZV9tYnVmL3J0ZV9tYnVmLmMgfCAgNiAr Ky0tLS0NCj4gPiA+ID4gPiA+ID4gPj4+ICBsaWIvbGlicnRlX21idWYvcnRlX21idWYuaCB8IDEy ICsrKystLS0tLS0tLQ0KPiA+ID4gPiA+ID4gPiA+Pj4gIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNl cnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkNCj4gPiA+ID4gPiA+ID4gPj4+DQo+ID4gPiA+ID4g PiA+ID4+PiBkaWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9tYnVmL3J0ZV9tYnVmLmMNCj4gYi9saWIv bGlicnRlX21idWYvcnRlX21idWYuYw0KPiA+ID4gPiA+ID4gPiA+Pj4gaW5kZXggOGE0NTZlNWU2 NC4uZTYzMjA3MWMyMyAxMDA2NDQNCj4gPiA+ID4gPiA+ID4gPj4+IC0tLSBhL2xpYi9saWJydGVf bWJ1Zi9ydGVfbWJ1Zi5jDQo+ID4gPiA+ID4gPiA+ID4+PiArKysgYi9saWIvbGlicnRlX21idWYv cnRlX21idWYuYw0KPiA+ID4gPiA+ID4gPiA+Pj4gQEAgLTEyOSwxMCArMTI5LDggQEANCj4gcnRl X3BrdG1idWZfZnJlZV9waW5uZWRfZXh0bWVtKHZvaWQgKmFkZHIsIHZvaWQgKm9wYXF1ZSkNCj4g PiA+ID4gPiA+ID4gPj4+DQo+ID4gPiA+ID4gPiA+ID4+PiAgCXJ0ZV9tYnVmX2V4dF9yZWZjbnRf c2V0KG0tPnNoaW5mbywgMSk7DQo+ID4gPiA+ID4gPiA+ID4+PiAgCW0tPm9sX2ZsYWdzID0gRVhU X0FUVEFDSEVEX01CVUY7DQo+ID4gPiA+ID4gPiA+ID4+PiAtCWlmIChtLT5uZXh0ICE9IE5VTEwp IHsNCj4gPiA+ID4gPiA+ID4gPj4+IC0JCW0tPm5leHQgPSBOVUxMOw0KPiA+ID4gPiA+ID4gPiA+ Pj4gLQkJbS0+bmJfc2VncyA9IDE7DQo+ID4gPiA+ID4gPiA+ID4+PiAtCX0NCj4gPiA+ID4gPiA+ ID4gPj4+ICsJbS0+bmV4dCA9IE5VTEw7DQo+ID4gPiA+ID4gPiA+ID4+PiArCW0tPm5iX3NlZ3Mg PSAxOw0KPiA+ID4gPiA+ID4gPiA+Pj4gIAlydGVfbWJ1Zl9yYXdfZnJlZShtKTsNCj4gPiA+ID4g PiA+ID4gPj4+ICB9DQo+ID4gPiA+ID4gPiA+ID4+Pg0KPiA+ID4gPiA+ID4gPiA+Pj4gZGlmZiAt LWdpdCBhL2xpYi9saWJydGVfbWJ1Zi9ydGVfbWJ1Zi5oDQo+IGIvbGliL2xpYnJ0ZV9tYnVmL3J0 ZV9tYnVmLmgNCj4gPiA+ID4gPiA+ID4gPj4+IGluZGV4IGExNDE0ZWQ3Y2QuLmVmNTgwMGM4ZWYg MTAwNjQ0DQo+ID4gPiA+ID4gPiA+ID4+PiAtLS0gYS9saWIvbGlicnRlX21idWYvcnRlX21idWYu aA0KPiA+ID4gPiA+ID4gPiA+Pj4gKysrIGIvbGliL2xpYnJ0ZV9tYnVmL3J0ZV9tYnVmLmgNCj4g PiA+ID4gPiA+ID4gPj4+IEBAIC0xMzI5LDEwICsxMzI5LDggQEAgcnRlX3BrdG1idWZfcHJlZnJl ZV9zZWcoc3RydWN0DQo+IHJ0ZV9tYnVmICptKQ0KPiA+ID4gPiA+ID4gPiA+Pj4gIAkJCQlyZXR1 cm4gTlVMTDsNCj4gPiA+ID4gPiA+ID4gPj4+ICAJCX0NCj4gPiA+ID4gPiA+ID4gPj4+DQo+ID4g PiA+ID4gPiA+ID4+PiAtCQlpZiAobS0+bmV4dCAhPSBOVUxMKSB7DQo+ID4gPiA+ID4gPiA+ID4+ PiAtCQkJbS0+bmV4dCA9IE5VTEw7DQo+ID4gPiA+ID4gPiA+ID4+PiAtCQkJbS0+bmJfc2VncyA9 IDE7DQo+ID4gPiA+ID4gPiA+ID4+PiAtCQl9DQo+ID4gPiA+ID4gPiA+ID4+PiArCQltLT5uZXh0 ID0gTlVMTDsNCj4gPiA+ID4gPiA+ID4gPj4+ICsJCW0tPm5iX3NlZ3MgPSAxOw0KPiA+ID4gPiA+ ID4gPiA+Pj4NCj4gPiA+ID4gPiA+ID4gPj4+ICAJCXJldHVybiBtOw0KPiA+ID4gPiA+ID4gPiA+ Pj4NCj4gPiA+ID4gPiA+ID4gPj4+IEBAIC0xMzQ2LDEwICsxMzQ0LDggQEAgcnRlX3BrdG1idWZf cHJlZnJlZV9zZWcoc3RydWN0DQo+IHJ0ZV9tYnVmICptKQ0KPiA+ID4gPiA+ID4gPiA+Pj4gIAkJ CQlyZXR1cm4gTlVMTDsNCj4gPiA+ID4gPiA+ID4gPj4+ICAJCX0NCj4gPiA+ID4gPiA+ID4gPj4+ DQo+ID4gPiA+ID4gPiA+ID4+PiAtCQlpZiAobS0+bmV4dCAhPSBOVUxMKSB7DQo+ID4gPiA+ID4g PiA+ID4+PiAtCQkJbS0+bmV4dCA9IE5VTEw7DQo+ID4gPiA+ID4gPiA+ID4+PiAtCQkJbS0+bmJf c2VncyA9IDE7DQo+ID4gPiA+ID4gPiA+ID4+PiAtCQl9DQo+ID4gPiA+ID4gPiA+ID4+PiArCQlt LT5uZXh0ID0gTlVMTDsNCj4gPiA+ID4gPiA+ID4gPj4+ICsJCW0tPm5iX3NlZ3MgPSAxOw0KPiA+ ID4gPiA+ID4gPiA+Pj4gIAkJcnRlX21idWZfcmVmY250X3NldChtLCAxKTsNCj4gPiA+ID4gPiA+ ID4gPj4+DQo+ID4gPiA+ID4gPiA+ID4+PiAgCQlyZXR1cm4gbTsNCj4gPiA+ID4gPiA+ID4gPj4+ IC0tDQo+ID4gPiA+ID4gPiA+ID4+PiAyLjI1LjENCj4gPiA+ID4gPiA+ID4gPj4NCj4gPiA+ID4g PiA+ID4NCg0K