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 03593A0524; Mon, 12 Apr 2021 21:26:52 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8059C1412DE; Mon, 12 Apr 2021 21:26:52 +0200 (CEST) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2063.outbound.protection.outlook.com [40.107.94.63]) by mails.dpdk.org (Postfix) with ESMTP id 1D5EB1412DD for ; Mon, 12 Apr 2021 21:26:51 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fSPpjLWjUhkSmmzR8ORbNvFXAFAr1n7JsINqZtMMMFqI8xb386nN9XLbguGUMjs3DxL9cZqoA54D2dTxW1w0VZyij6QEf5FEmLymoONhJPI3FSs9TULYcCCMakYVcsZs0MICzFMR333jXJgpTw8ys1ma+8WhzsKlxPUyonVV2lGzVq2IWMxVRriKnuTqIuFOis5egcQhkj/JRz20MWgtVBYowfXLzgnF2cae2XV+Ywnr5CuR3Yjh2zJaxzdMWWEn4+Aucy+LiLH2sGKnBzBSku1hfCL3fyVg9Of2iPs8tJm2SnN7l/gkmZ6Je1KE2DnKeSd/hbxyqD6DtLbhCoqAsQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8RKZRM8OOYuKgkIo8tz0T9SBc4Bo/aARSKyRQyr+S0M=; b=JlNH29PPsZx18/YfvraUAxB3lDjxCZ2RuahMvlMLrkcNmT/7JPGwv9ZitvKkda7/sbw1LvpnSfLNiSlm0+Jr19MrHEFya5nb6NTpuoKJmNmOSuoxtbl2yUXcIDcru0zBXpkoTjsCjiVA8QtPiXd+rKiI4qXXCOXn2ZPNWubNrHzyil3+m8SyCOx7rcfAfP34Dval3Ws2JyXW5zLx92OKSnxdT0WSJ1cSB9whPSeKU4mWz/z/PDx4G202yUpJNE4HoCbTQgWEa126FUnys6KlBdd/YVRcWVE3fvl0zXK2xrpq5eSmIVo3bheR/mqIaFnB0w6fUdYLeEey7bAxlcSxkA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8RKZRM8OOYuKgkIo8tz0T9SBc4Bo/aARSKyRQyr+S0M=; b=g4GnC+Awt3X6LjedBmrTQRdF03UpmS81s1oflc/3XzYHlx4d/lfW1xAUZ/9juBolsHF9VUUzGgEK3mFRQGb6ie3gP1Ti5YhILq5VAgMThpLQvtHUMUVdAOG+17saNDkaRbHqsZ1gRn1q6SFMiRFplrtxuNb95/Wd4U6dasHtu17bp9jF6wPFUX/O+da5/svGDMh0/Tqe+fRP0QRtbTgnNRWSFKR2kici6OzyiDiUKnWAKpBTBix6BnoA68JErnUHyeArexKR8ZhSTbD1VfXSakL70+wH1fK9dDUkWsFy7ABwOkFv4rgpq387DCRdYz176/9ouoR9i1ZE5fxpsHF8BQ== Received: from DM6PR12MB4987.namprd12.prod.outlook.com (2603:10b6:5:163::31) by DM6PR12MB3370.namprd12.prod.outlook.com (2603:10b6:5:38::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.21; Mon, 12 Apr 2021 19:26:46 +0000 Received: from DM6PR12MB4987.namprd12.prod.outlook.com ([fe80::f5ce:c5a8:6aec:e308]) by DM6PR12MB4987.namprd12.prod.outlook.com ([fe80::f5ce:c5a8:6aec:e308%7]) with mapi id 15.20.4020.022; Mon, 12 Apr 2021 19:26:45 +0000 From: Ori Kam To: Ferruh Yigit , Gregory Etelson CC: "ajit.khaparde@broadcom.com" , "andrew.rybchenko@oktetlabs.ru" , "dev@dpdk.org" , "jerinj@marvell.com" , "olivier.matz@6wind.com" , NBU-Contact-Thomas Monjalon , Slava Ovsiienko Thread-Topic: [PATCH v2 1/2] ethdev: add packet integrity checks Thread-Index: AQHXL8Jt8SEPwVVv3kSzW/YVMb8mUKqxP2/w Date: Mon, 12 Apr 2021 19:26:45 +0000 Message-ID: References: <1617645874-105139-1-git-send-email-orika@nvidia.com> <20210411173414.12568-1-getelson@nvidia.com> <20210411173414.12568-2-getelson@nvidia.com> <527c07fc-8c12-3e8a-cc3c-f6e345ee1c1f@intel.com> In-Reply-To: <527c07fc-8c12-3e8a-cc3c-f6e345ee1c1f@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=nvidia.com; x-originating-ip: [147.236.145.126] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 30257e1e-39fb-4b90-39c6-08d8fde8e927 x-ms-traffictypediagnostic: DM6PR12MB3370: x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: oLHfMSgh1VuQszpzBo1HV4u434IiNIB+1NbcH2hkwovfcDuDgsbrTY9MR32Wenh5pxqFZxuZFiCqJo2HtrCGdD8w/CUNewky7aSt8w1nf8weta0B+ICcQs7q8kvL1pvgIOEiBexz1j4IU6pY1sOa/bQxhhCjbEb4qW0pcoqFzLA6xplaf0XSQj9UeJSf2ipIN59Bm3JQQ20Jpd/ZfOjjrdavhxMxW2Nx505ERMTwOd6R14PxKYP/BAke4mROJUPWDzwzNMKN96K4Ixie5as/mQEaIO0juWwFXHOdJc2p8tBv5FA31fcZwKv9BJ3vzSftdTscSy2Ua1zmYwvOD2oKQrc4ulDiJahQwVzydyt5ZKRPPl8i3wUdM7xbFxAWVGBGVwAF8J2n7Fkp1B9GTVoi0of2HGCyAELXP6c9VhMs58ZaMbTgx//jh0o1oInzX+CPWm4GXSJWIlgxRJXkz/qtPLiU+frBfilWhSdvq88SMUeyx3+0LoLtk0Da2m2owtfNHs43zNv7ScduDDfRIlahm2ILPRei5evAwxjYt/JzJUY9PWyvtKP6cw9gUPW90KqLrij5cJwjuGLDvFz7IxD/laSW/19zZIA/07nPos3LiIU= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR12MB4987.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(376002)(396003)(136003)(39860400002)(346002)(366004)(66446008)(66556008)(76116006)(66946007)(66476007)(186003)(7696005)(110136005)(5660300002)(2906002)(26005)(8676002)(6506007)(54906003)(53546011)(83380400001)(71200400001)(64756008)(478600001)(6636002)(33656002)(9686003)(38100700002)(8936002)(86362001)(316002)(4326008)(55016002)(107886003)(52536014); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: =?utf-8?B?VjUyZ3ZQSVVQbnZBK2tMYi94UzNleExEVWtMczdIWVFTQnBTbktQZGh5YjIr?= =?utf-8?B?bG5hVjRKbWVsMXdsUGVCMUo2RjNEVU12dWZEaVIrQmFOYWRMOGxySUdLVU8v?= =?utf-8?B?NnY1Vm9udDJxZGgwbzdLNitDRWJTQkxxVy9zQ3RmbHJDMGZRckxNTnIwN292?= =?utf-8?B?V0kwaE05eURJMHFIbjF5TjR0cDA1bHAxTGE2QWd4U3g3Mk83aXp0QUtxa0J3?= =?utf-8?B?aHJWd2Ezdlkrckludk4xQ1E4RnppY2UxSzRUVlgrNXJqK3lyeDRFQXRDOTBu?= =?utf-8?B?amQ3RHNzK1JCbWc3Y3ZVamNhWHhNT29TeE94VU8xWG84dkt3WnhqOTQwb1RE?= =?utf-8?B?UUVnZUIvRVlLVnhvWE5aQjFiUU1Jd3RDbWdKTDFBYnJOeEQyL1lsMU01YU5a?= =?utf-8?B?eHBkdjY5cHBCZGxodmoyR0w2Z3g0a3dsT0gyWndpVXl3YTd0ZlFWajY2YnZq?= =?utf-8?B?M1ZnTk41Vnhlb0lvYW5XNVhmUEUyeHI1T2ErQXRBQUpaWTNaVzl3cThKMGZn?= =?utf-8?B?bFU4dElONFpLbmMzK0E0UUtVTUdkOEI4b05SVUxnNTRvTTB3OHdZNDBQSzlt?= =?utf-8?B?bzIxS1greUxCaDVLQm1KWTBsT0gzNFkzVGF4M2dMcEszZnVrRDdHQlhWWVQ5?= =?utf-8?B?SDlUNzhreTlVWkRmajJtK091eG44UG1QQ1UwdU83Vmk3NlFrQlJadFFSNTJx?= =?utf-8?B?U2FXUitwYXoxWkFiM2E2RVFncGo0aXF3V1hwanQyREtkenJld1pZQklOYjUy?= =?utf-8?B?L0l4RE85RkpGNUQvUVdrNEd1c2Eya2pFTFJhQTNSK3hNRmVhM3FwSzltTVRN?= =?utf-8?B?eXV1Z0l0UkNXOXRCclRSOGtubnRWSXMzczhxZSswV2ZjYWN1bVc3U3VYWVlS?= =?utf-8?B?YlZtMTNNMEd2Y3RCVjBHOHFuOFRmZXhiMEUzc0RIWkZGMGNvYUVZTmx3bjFT?= =?utf-8?B?azFoaGtVVmF0TkFobzRWWFQzYlJrQ21WL2tGbFUxd3ZtdDJ0RGlsS1NuYmRX?= =?utf-8?B?cmRzRFlYZ3RjWDJCRk43a3oxMFUyT3dHbHRMZU9RK285eU1VaThESThrRTJX?= =?utf-8?B?VHFpL0JRekQwYm5aSnZqRTFJY3BFbzQyZzY5L05Hc0RnbTllb0EyK3NWV2ln?= =?utf-8?B?SThKMXZQVytNbnVFcFB0cXJUcnhPaDNCMU1BY2tWa2s0bFdQaFFNdjlTb2VR?= =?utf-8?B?aWpQMGx4TTJRdG5pOGErTDVQbE9wVDdiOWNlVHZKdGU4NXJKbFljcFQrTk5n?= =?utf-8?B?SFNkWHlnSnBRNnEwL2UzMThYYzl3bWFMck5ORjBxbXJpQnNyMm9oZTRDSjZQ?= =?utf-8?B?L3ZiMXAyd3ZDeWpkTzdieFFsd2gzWDU0SlZmQkNjTzVvL3VYWDRTR3hRdjlK?= =?utf-8?B?OS9uRE5vWWo0dGxjL1ZvSnBnNk1SMm92K29sT2lYTGMwZm81eno2L1pwczhU?= =?utf-8?B?czFCVFY4UnA2eE5GNms1U1JnWmYwWGdKOFhIQlAyNHpmeWF2R1NWV3pZWWE0?= =?utf-8?B?MEFNMXpOQTZoemZ2ano2b244cENxcHZEQTJEdXdjNlVIZ0RmWXZDODM4L3Ny?= =?utf-8?B?dlB2V0k1OUJpMWFQVW1iaFBGUmpLSW1FZzdtbDhTOStvWmdOYUJKeDB6YW1B?= =?utf-8?B?UjI3ZkFKdmwwYWZWV284eGdWUXBwRmttVHVwbC80dU84WnAzL1BGN2p0Zk0x?= =?utf-8?B?N0h3WWdDZlNKamxvVE80VE1CRm1XcEdWK1JSckc5M0tsS2Nmd1pFZ0JTbGZQ?= =?utf-8?Q?heyM33SvTc5yOfqx+ZAheHcOfM3x/VdiMVT2GgS?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR12MB4987.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 30257e1e-39fb-4b90-39c6-08d8fde8e927 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2021 19:26:45.6558 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: h8KfdHfEGbzUEz9xYN8ochLAQMsQtmNYyCuDeF2aJFji7GqzAA/WFXsSP/0bhFkK3EI503md3Ah0NDQ5YL7cbQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB3370 Subject: Re: [dpdk-dev] [PATCH v2 1/2] ethdev: add packet integrity checks 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" SGkgRmVycnVoLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEZlcnJ1 aCBZaWdpdCA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT4NCj4gU3ViamVjdDogUmU6IFtQQVRDSCB2 MiAxLzJdIGV0aGRldjogYWRkIHBhY2tldCBpbnRlZ3JpdHkgY2hlY2tzDQo+IA0KPiBPbiA0LzEx LzIwMjEgNjozNCBQTSwgR3JlZ29yeSBFdGVsc29uIHdyb3RlOg0KPiA+IEZyb206IE9yaSBLYW0g PG9yaWthQG52aWRpYS5jb20+DQo+ID4NCj4gPiBDdXJyZW50bHksIERQREsgYXBwbGljYXRpb24g Y2FuIG9mZmxvYWQgdGhlIGNoZWNrc3VtIGNoZWNrLA0KPiA+IGFuZCByZXBvcnQgaXQgaW4gdGhl IG1idWYuDQo+ID4NCj4gPiBIb3dldmVyLCBhcyBtb3JlIGFuZCBtb3JlIGFwcGxpY2F0aW9ucyBh cmUgb2ZmbG9hZGluZyBzb21lIG9yIGFsbA0KPiA+IGxvZ2ljIGFuZCBhY3Rpb24gdG8gdGhlIEhX LCB0aGVyZSBpcyBhIG5lZWQgdG8gY2hlY2sgdGhlIHBhY2tldA0KPiA+IGludGVncml0eSBzbyB0 aGUgcmlnaHQgZGVjaXNpb24gY2FuIGJlIHRha2VuLg0KPiA+DQo+ID4gVGhlIGFwcGxpY2F0aW9u IGxvZ2ljIGNhbiBiZSBwb3NpdGl2ZSBtZWFuaW5nIGlmIHRoZSBwYWNrZXQgaXMNCj4gPiB2YWxp ZCBqdW1wIC8gZG8gIGFjdGlvbnMsIG9yIG5lZ2F0aXZlIGlmIHBhY2tldCBpcyBub3QgdmFsaWQN Cj4gPiBqdW1wIHRvIFNXIC8gZG8gYWN0aW9ucyAobGlrZSBkcm9wKSAgYSwgYW5kIGFkZCBkZWZh dWx0IGZsb3cNCj4gPiAobWF0Y2ggYWxsIGluIGxvdyBwcmlvcml0eSkgdGhhdCB3aWxsIGRpcmVj dCB0aGUgbWlzcyBwYWNrZXQNCj4gPiB0byB0aGUgbWlzcyBwYXRoLg0KPiA+DQo+ID4gU2luY2Ug Y3VycmVubHR5IHJ0ZV9mbG93IHdvcmtzIGluIHBvc2l0aXZlIHdheSB0aGUgYXNzdW10aW9uIGlz DQo+ID4gdGhhdCB0aGUgcG9zdGl2ZSB3YXkgd2lsbCBiZSB0aGUgY29tbW9uIHdheSBpbiB0aGlz IGNhc2UgYWxzby4NCj4gPg0KPiA+IFdoZW4gdGhpbmtpbmcgd2hhdCBpcyB0aGUgYmVzdCBBUEkg dG8gaW1wbGVtZW50IHN1Y2ggZmVhdHVyZSwNCj4gPiB3ZSBuZWVkIHRvIGNvbnNpZHVyZSB0aGUg Zm9sbG93aW5nIChpbiBubyBzcGVjaWZpYyBvcmRlcik6DQo+ID4gMS4gQVBJIGJyZWFrYWdlLg0K PiA+IDIuIFNpbXBsaWNpdHkuDQo+ID4gMy4gUGVyZm9ybWFuY2UuDQo+ID4gNC4gSFcgY2FwYWJp bGl0aWVzLg0KPiA+IDUuIHJ0ZV9mbG93IGxpbWl0YXRpb24uDQo+ID4gNi4gRmxleGFiaWxpdHku DQo+ID4NCj4gPiBGaXJzdCBvcHRpb246IEFkZCBpbnRlZ3JpdHkgZmxhZ3MgdG8gZWFjaCBvZiB0 aGUgaXRlbXMuDQo+ID4gRm9yIGV4YW1wbGUgYWRkIGNoZWNrc3VtX29rIHRvIGlwdjQgaXRlbS4N Cj4gPg0KPiA+IFByb3M6DQo+ID4gMS4gTm8gbmV3IHJ0ZV9mbG93IGl0ZW0uDQo+ID4gMi4gU2lt cGxlIGluIHRoZSB3YXkgdGhhdCBvbiBlYWNoIGl0ZW0gdGhlIGFwcCBjYW4gc2VlDQo+ID4gd2hh dCBjaGVja3MgYXJlIGF2YWlsYWJsZS4NCj4gPg0KPiA+IENvbnM6DQo+ID4gMS4gQVBJIGJyZWFr YWdlLg0KPiA+IDIuIGluY3JlYXNlIG51bWJlciBvZiBmbG93cywgc2luY2UgYXBwIGNhbid0IGFk ZCBnbG9iYWwgcnVsZSBhbmQNCj4gPiAgICAgbXVzdCBoYXZlIGRlZGljYXRlZCBmbG93IGZvciBl YWNoIG9mIHRoZSBmbG93IGNvbWJpbmF0aW9ucywgZm9yIGV4YW1wbGUNCj4gPiAgICAgbWF0Y2hp bmcgb24gaWNtcCB0cmFmZmljIG9yIFVEUC9UQ1AgIHRyYWZmaWMgd2l0aCBJUHY0IC8gSVB2NiB3 aWxsDQo+ID4gICAgIHJlc3VsdCBpbiA1IGZsb3dzLg0KPiA+DQo+ID4gU2Vjb25kIG9wdGlvbjog ZGVkaWNhdGVkIGl0ZW0NCj4gPg0KPiA+IFByb3M6DQo+ID4gMS4gTm8gQVBJIGJyZWFrYWdlLCBh bmQgdGhlcmUgd2lsbCBiZSBubyBmb3Igc29tZSB0aW1lIGR1ZSB0byBoYXZpbmcNCj4gPiAgICAg ZXh0cmEgc3BhY2UuIChieSB1c2luZyBiaXRzKQ0KPiA+IDIuIEp1c3Qgb25lIGZsb3cgdG8gc3Vw cG9ydCB0aGUgaWNtcCBvciBVRFAvVENQIHRyYWZmaWMgd2l0aCBJUHY0IC8NCj4gPiAgICAgSVB2 Ni4NCj4gPiAzLiBTaW1wbGljaXR5IGFwcGxpY2F0aW9uIGNhbiBqdXN0IGxvb2sgYXQgb25lIHBs YWNlIHRvIHNlZSBhbGwgcG9zc2libGUNCj4gPiAgICAgY2hlY2tzLg0KPiA+IDQuIEFsbG93IGZ1 dHVyZSBzdXBwb3J0IGZvciBtb3JlIHRlc3RzLg0KPiA+DQo+ID4gQ29uczoNCj4gPiAxLiBOZXcg aXRlbSwgdGhhdCBob2xkcyBudW1iZXIgb2YgZmllbGRzIGZyb20gZGlmZmVyZW50IGl0ZW1zLg0K PiA+DQo+ID4gRm9yIHN0YXJ0ZXIgdGhlIGZvbGxvd2luZyBiaXRzIGFyZSBzdWdnZXN0ZWQ6DQo+ ID4gMS4gcGFja2V0X29rIC0gbWVhbnMgdGhhdCBhbGwgSFcgY2hlY2tzIGRlcGVuZGluZyBvbiBw YWNrZXQgbGF5ZXIgaGF2ZQ0KPiA+ICAgICBwYXNzZWQuIFRoaXMgbWF5IG1lYW4gdGhhdCBpbiBz b21lIEhXIHN1Y2ggZmxvdyBzaG91bGQgYmUgc3BsaXRlZCB0bw0KPiA+ICAgICBudW1iZXIgb2Yg Zmxvd3Mgb3IgZmFpbC4NCj4gPiAyLiBsMl9vayAtIGFsbCBjaGVjayBmbG9yIGxheWVyIDIgaGF2 ZSBwYXNzZWQuDQo+ID4gMy4gbDNfb2sgLSBhbGwgY2hlY2sgZmxvciBsYXllciAyIGhhdmUgcGFz c2VkLiBJZiBwYWNrZXQgZG9lbnMndCBoYXZlDQo+ID4gICAgIGwzIGxheWVyIHRoaXMgY2hlY2sg c2hvdWRsIGZhaWwuDQo+ID4gNC4gbDRfb2sgLSBhbGwgY2hlY2sgZmxvciBsYXllciAyIGhhdmUg cGFzc2VkLiBJZiBwYWNrZXQgZG9lc24ndA0KPiA+ICAgICBoYXZlIGw0IGxheWVyIHRoaXMgY2hl Y2sgc2hvdWxkIGZhaWwuDQo+ID4gNS4gbDJfY3JjX29rIC0gdGhlIGxheWVyIDIgY3JjIGlzIE8u Sy4gaXQgaXMgcG9zc2libGUgdGhhdCB0aGUgY3JjIHdpbGwNCj4gPiAgICAgYmUgTy5LLiBidXQg dGhlIGwzX29rIHdpbGwgYmUgMC4gaXQgaXMgbm90IHBvc3NpYmxlIHRoYXQgbDJfY3JjX29rIHdp bGwNCj4gPiAgICAgYmUgMCBhbmQgdGhlIGwzX29rIHdpbGwgYmUgMC4NCj4gPiA2LiBpcHY0X2Nz dW1fb2sgLSBJUHY0IGNoZWNrc3VtIGlzIE8uSy4NCj4gPiA3LiBsNF9jc3VtX29rIC0gbGF5ZXIg NCBjaGVja3N1bSBpcyBPLksuDQo+ID4gOC4gbDNfbGVuX09LIC0gY2hlY2sgdGhhdCB0aGUgcmVw b3J0ZWQgbGF5ZXIgMyBsZW4gaXMgc21hbGxlciB0aGFuIHRoZQ0KPiA+ICAgICBwYWNrZXQgbGVu Lg0KPiA+DQo+ID4gRXhhbXBsZSBvZiB1c2FnZToNCj4gPiAxLiBjaGVjayBwYWNrZXRzIGZyb20g YWxsIHBvc3NpYmxlIGxheWVycyBmb3IgaW50ZWdyaXR5Lg0KPiA+ICAgICBmbG93IGNyZWF0ZSBp bnRlZ3JpdHkgc3BlYyBwYWNrZXRfb2sgPSAxIG1hc2sgcGFja2V0X29rID0gMSAuLi4uLg0KPiA+ DQo+ID4gMi4gQ2hlY2sgb25seSBwYWNrZXQgd2l0aCBsYXllciA0IChVRFAgLyBUQ1ApDQo+ID4g ICAgIGZsb3cgY3JlYXRlIGludGVncml0eSBzcGVjIGwzX29rID0gMSwgbDRfb2sgPSAxIG1hc2sg bDNfb2sgPSAxIGw0X29rID0gMQ0KPiA+DQo+IA0KPiBIaSBPcmksDQo+IA0KPiBJcyB0aGUgaW50 ZW50aW9uIG9mIHRoZSBBUEkganVzdCBmaWx0ZXJpbmcsIGxpa2UgYXBwbHkgc29tZSBhY3Rpb24g dG8gdGhlDQo+IHBhY2tldHMgYmFzZWQgb24gdGhlaXIgaW50ZWdyYXRpb24gc3RhdHVzLiBMaWtl IGRyb3AgcGFja2V0cyB0aGVpciBsMl9jcmMNCj4gY2hlY2tzdW0gZmFpbGVkPyBIZXJlIGNvbmZp Z3VyYXRpb24gaXMgZG9uZSBieSBleGlzdGluZyBvZmZsb2FkIEFQSXMuDQo+IA0KPiBPciBpcyB0 aGUgaW50ZW50aW9uIHRvIGNvbmZpZ3VyZSB0aGUgaW50ZWdyYXRpb24gY2hlY2sgb24gTklDLCBs aWtlIHRvIHNheQ0KPiBlbmFibGUgbGF5ZXIgMiBjaGVja3MsIGFuZCBkbyB0aGUgYWN0aW9uIGJh c2VkIG9uIGludGVncmF0aW9uIGNoZWNrIHN0YXR1cy4NCj4gDQpJZiBJIHVuZGVyc3RhbmQgeW91 ciBxdWVzdGlvbiB0aGUgZmlyc3QgY2FzZSBpcyB0aGUgb25lIHRoYXQgdGhpcyBwYXRjaCBpcyB0 YXJnZXRpbmcuDQptZWFuaW5nIGJhc2VkIG9uIHRob3NlIGJpdHMgcm91dGUvYXBwbHkgYWN0aW9u cyB0byB0aGUgcGFja2V0IHdoaWxlIHN0aWxsIGluIHRoZQ0KSFcuDQoNClRoaXMgaXMgbm90IGRl c2lnbiB0byBlbmFibGUgdGhlIHF1ZXVlIHN0YXR1cyBiaXRzLg0KSW4gdGhlIHVzZSBjYXNlIHN1 Z2dlc3Rpb24gYnkgdGhpcyBwYXRjaCwganVzdCBsaWtlIHlvdSBzYWlkIHRoZSBhcHANCmNhbiBk ZWNpZGUgdG8gZHJvcCB0aGUgcGFja2V0IGJlZm9yZSBhcnJpdmluZyB0byB0aGUgcXVldWUsIGFw cGxpY2F0aW9uIG1heSBhbHNvDQp1c2UgdGhlIG1hcmsgKyBxdWV1ZSBhY3Rpb24gdG8gbWFyayB0 byB0aGUgU1cgd2hhdCBpcyB0aGUgaXNzdWUgd2l0aCB0aGlzIHBhY2tldC4NCg0KSSdtIG5vdCBz dXJlIEkgdW5kZXJzdGFuZCB5b3VyIGNvbW1lbnQgYWJvdXQgImhlcmUgY29uZmlndXJhdGlvbiBp cyBkb25lIGJ5IGV4aXN0aW5nDQpvZmZsb2FkIEFQSSIgZG8geW91IG1lYW4gbGlrZSB0aGUgZHJv cCAvICBqdW1wIHRvIHRhYmxlIC8gYW55IG90aGVyIHJ0ZV9mbG93IGFjdGlvbj8NCiANCg0KPiAN Cj4gPiBTaWduZWQtb2ZmLWJ5OiBPcmkgS2FtIDxvcmlrYUBudmlkaWEuY29tPg0KPiA+IC0tLQ0K PiA+IHYyOiBmaXggY29tcGlsYXRpb24gZXJyb3INCj4gPiAtLS0NCj4gPiAgIGRvYy9ndWlkZXMv cHJvZ19ndWlkZS9ydGVfZmxvdy5yc3QgfCAxOSArKysrKysrKysrKysNCj4gPiAgIGxpYi9saWJy dGVfZXRoZGV2L3J0ZV9mbG93LmggICAgICAgfCA0NyArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysNCj4gPiAgIDIgZmlsZXMgY2hhbmdlZCwgNjYgaW5zZXJ0aW9ucygrKQ0KPiA+DQo+ID4g ZGlmZiAtLWdpdCBhL2RvYy9ndWlkZXMvcHJvZ19ndWlkZS9ydGVfZmxvdy5yc3QNCj4gYi9kb2Mv Z3VpZGVzL3Byb2dfZ3VpZGUvcnRlX2Zsb3cucnN0DQo+ID4gaW5kZXggZTFiOTNlY2VkZi4uODdl ZjU5MTQwNSAxMDA2NDQNCj4gPiAtLS0gYS9kb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvcnRlX2Zsb3cu cnN0DQo+ID4gKysrIGIvZG9jL2d1aWRlcy9wcm9nX2d1aWRlL3J0ZV9mbG93LnJzdA0KPiA+IEBA IC0xMzk4LDYgKzEzOTgsMjUgQEAgTWF0Y2hlcyBhIGVDUFJJIGhlYWRlci4NCj4gPiAgIC0gYGBo ZHJgYDogZUNQUkkgaGVhZGVyIGRlZmluaXRpb24gKGBgcnRlX2VjcHJpLmhgYCkuDQo+ID4gICAt IERlZmF1bHQgYGBtYXNrYGAgbWF0Y2hlcyBub3RoaW5nLCBmb3IgYWxsIGVDUFJJIG1lc3NhZ2Vz Lg0KPiA+DQo+ID4gK0l0ZW06IGBgUEFDS0VUX0lOVEVHUklUWV9DSEVDS1NgYA0KPiA+ICteXl5e Xl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl4NCj4gPiArDQo+ID4gK01hdGNoZXMgcGFja2V0 IGludGVncml0eS4NCj4gPiArDQo+ID4gKy0gYGBsZXZlbGBgOiB0aGUgZW5jYXBzdWxhdGlvbiBs ZXZlbCB0aGF0IHNob3VsZCBiZSBjaGVja2VkLiBsZXZlbCAwIG1lYW5zIHRoZQ0KPiA+ICsgIGRl ZmF1bHQgUE1EIG1vZGUgKENhbiBiZSBpbm5lciBtb3N0IC8gb3V0ZXJtb3N0KS4gdmFsdWUgb2Yg MSBtZWFucw0KPiBvdXRlcm1vc3QNCj4gPiArICBhbmQgaGlnaGVyIHZhbHVlIG1lYW5zIGlubmVy IGhlYWRlci4gU2VlIGFsc28gUlNTIGxldmVsLg0KPiA+ICstIGBgcGFja2V0X29rYGA6IEFsbCBI VyBwYWNrZXQgaW50ZWdyaXR5IGNoZWNrcyBoYXZlIHBhc3NlZCBiYXNlZCBvbiB0aGUNCj4gbWF4 DQo+ID4gKyAgbGF5ZXIgb2YgdGhlIHBhY2tldC4NCj4gPiArICBsYXllciBvZiB0aGUgcGFja2V0 Lg0KPiA+ICstIGBgbDJfb2tgYDogYWxsIGxheWVyIDIgSFcgaW50ZWdyaXR5IGNoZWNrcyBwYXNz ZWQuDQo+ID4gKy0gYGBsM19va2BgOiBhbGwgbGF5ZXIgMyBIVyBpbnRlZ3JpdHkgY2hlY2tzIHBh c3NlZC4NCj4gPiArLSBgYGw0X29rYGA6IGFsbCBsYXllciAzIEhXIGludGVncml0eSBjaGVja3Mg cGFzc2VkLg0KPiANCj4gcy9sYXllciAzLyBsYXllciA0Lw0KPiANCldpbGwgZml4Lg0KDQo+ID4g Ky0gYGBsMl9jcmNfb2tgYDogbGF5ZXIgMiBjcmMgY2hlY2sgcGFzc2VkLg0KPiA+ICstIGBgaXB2 NF9jc3VtX29rYGA6IGlwdjQgY2hlY2tzdW0gY2hlY2sgcGFzc2VkLg0KPiA+ICstIGBgbDRfY3N1 bV9va2BgOiBsYXllciA0IGNoZWNrc3VtIGNoZWNrIHBhc3NlZC4NCj4gPiArLSBgYGwzX2xlbl9v a2BgOiB0aGUgbGF5ZXIgMyBsZW4gaXMgc21hbGxlciB0aGFuIHRoZSBwYWNrZXQgbGVuLg0KPiA+ ICsNCj4gPiAgIEFjdGlvbnMNCj4gPiAgIH5+fn5+fn4NCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9s aWIvbGlicnRlX2V0aGRldi9ydGVfZmxvdy5oIGIvbGliL2xpYnJ0ZV9ldGhkZXYvcnRlX2Zsb3cu aA0KPiA+IGluZGV4IDZjYzU3MTM2YWMuLjc3NDcxYWYyYzQgMTAwNjQ0DQo+ID4gLS0tIGEvbGli L2xpYnJ0ZV9ldGhkZXYvcnRlX2Zsb3cuaA0KPiA+ICsrKyBiL2xpYi9saWJydGVfZXRoZGV2L3J0 ZV9mbG93LmgNCj4gPiBAQCAtNTUxLDYgKzU1MSwxNSBAQCBlbnVtIHJ0ZV9mbG93X2l0ZW1fdHlw ZSB7DQo+ID4gICAJICogU2VlIHN0cnVjdCBydGVfZmxvd19pdGVtX2dlbmV2ZV9vcHQNCj4gPiAg IAkgKi8NCj4gPiAgIAlSVEVfRkxPV19JVEVNX1RZUEVfR0VORVZFX09QVCwNCj4gPiArDQo+ID4g KwkvKioNCj4gPiArCSAqIFtNRVRBXQ0KPiA+ICsJICoNCj4gPiArCSAqIE1hdGNoZXMgb24gcGFj a2V0IGludGVncml0eS4NCj4gPiArCSAqDQo+ID4gKwkgKiBTZWUgc3RydWN0IHJ0ZV9mbG93X2l0 ZW1faW50ZWdyaXR5Lg0KPiA+ICsJICovDQo+ID4gKwlSVEVfRkxPV19JVEVNX1RZUEVfSU5URUdS SVRZLA0KPiA+ICAgfTsNCj4gPg0KPiA+ICAgLyoqDQo+ID4gQEAgLTE2ODUsNiArMTY5NCw0NCBA QCBydGVfZmxvd19pdGVtX2dlbmV2ZV9vcHRfbWFzayA9IHsNCj4gPiAgIH07DQo+ID4gICAjZW5k aWYNCj4gPg0KPiA+ICtfX2V4dGVuc2lvbl9fDQo+ID4gK3N0cnVjdCBydGVfZmxvd19pdGVtX2lu dGVncml0eSB7DQo+ID4gKwl1aW50MzJfdCBsZXZlbDsNCj4gPiArCS8qKjwgUGFja2V0IGVuY2Fw c3VsYXRpb24gbGV2ZWwgdGhlIGl0ZW0gc2hvdWxkIGFwcGx5IHRvLg0KPiA+ICsJICogQHNlZSBy dGVfZmxvd19hY3Rpb25fcnNzDQo+ID4gKwkgKi8NCj4gPiArCXVuaW9uIHsNCj4gPiArCQlzdHJ1 Y3Qgew0KPiA+ICsJCQl1aW50NjRfdCBwYWNrZXRfb2s6MTsNCj4gPiArCQkJLyoqIFRoZSBwYWNr ZXQgaXMgdmFsaWQgYWZ0ZXIgcGFzc2luZyBhbGwgSFcgY2hlY2tzLiAqLw0KPiA+ICsJCQl1aW50 NjRfdCBsMl9vazoxOw0KPiA+ICsJCQkvKio8IEwyIGxheWVyIGlzIHZhbGlkIGFmdGVyIHBhc3Np bmcgYWxsIEhXIGNoZWNrcy4gKi8NCj4gPiArCQkJdWludDY0X3QgbDNfb2s6MTsNCj4gPiArCQkJ LyoqPCBMMyBsYXllciBpcyB2YWxpZCBhZnRlciBwYXNzaW5nIGFsbCBIVyBjaGVja3MuICovDQo+ ID4gKwkJCXVpbnQ2NF90IGw0X29rOjE7DQo+ID4gKwkJCS8qKjwgTDQgbGF5ZXIgaXMgdmFsaWQg YWZ0ZXIgcGFzc2luZyBhbGwgSFcgY2hlY2tzLiAqLw0KPiA+ICsJCQl1aW50NjRfdCBsMl9jcmNf b2s6MTsNCj4gPiArCQkJLyoqPCBMMiBsYXllciBjaGVja3N1bSBpcyB2YWxpZC4gKi8NCj4gPiAr CQkJdWludDY0X3QgaXB2NF9jc3VtX29rOjE7DQo+ID4gKwkJCS8qKjwgTDMgbGF5ZXIgY2hlY2tz dW0gaXMgdmFsaWQuICovDQo+ID4gKwkJCXVpbnQ2NF90IGw0X2NzdW1fb2s6MTsNCj4gPiArCQkJ LyoqPCBMNCBsYXllciBjaGVja3N1bSBpcyB2YWxpZC4gKi8NCj4gPiArCQkJdWludDY0X3QgbDNf bGVuX29rOjE7DQo+ID4gKwkJCS8qKjwgVGhlIGwzIGxlbiBpcyBzbWFsbGVyIHRoYW4gdGhlIHBh Y2tldCBsZW4uICovDQo+IA0KPiBwYWNrZXQgbGVuPw0KPiANCkRvIHlvdSBtZWFuIHJlcGxhY2Ug dGhlIGwzX2xlbl9vayB3aXRoIHBhY2tldCBsZW4/DQpNeSBvbmx5IGlzc3VlIGlzIHRoYXQgdGhl IGNoZWNrIGlzIGNvbXBhcmluZyB0aGUgbDMgbGVuIHRvIHRoZSBwYWNrZXQgbGVuLg0KDQpJZiB5 b3Ugc3RpbGwgdGhpbmsgaXQgaXMgYmV0dGVyIHRvIGNhbGwgaXQgcGFja2V0IGxlbiwgSSdtIGFs c28gTy5LIHdpdGggaXQuDQoNCj4gPiArCQkJdWludDY0X3QgcmVzZXJ2ZWQ6NTY7DQo+ID4gKwkJ fTsNCj4gPiArCQl1aW50NjRfdCAgdmFsdWU7DQo+ID4gKwl9Ow0KPiA+ICt9Ow0KPiA+ICsNCj4g PiArI2lmbmRlZiBfX2NwbHVzcGx1cw0KPiA+ICtzdGF0aWMgY29uc3Qgc3RydWN0IHJ0ZV9mbG93 X2l0ZW1faW50ZWdyaXR5DQo+ID4gK3J0ZV9mbG93X2l0ZW1faW50ZWdyaXR5X21hc2sgPSB7DQo+ ID4gKwkubGV2ZWwgPSAwLA0KPiA+ICsJLnZhbHVlID0gMCwNCj4gPiArfTsNCj4gPiArI2VuZGlm DQo+ID4gKw0KPiA+ICAgLyoqDQo+ID4gICAgKiBNYXRjaGluZyBwYXR0ZXJuIGl0ZW0gZGVmaW5p dGlvbi4NCj4gPiAgICAqDQo+ID4NCg0K