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 C5266436F0; Thu, 14 Dec 2023 15:16:44 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B7A9843291; Thu, 14 Dec 2023 15:16:44 +0100 (CET) Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2079.outbound.protection.outlook.com [40.107.223.79]) by mails.dpdk.org (Postfix) with ESMTP id 0575B4327C for ; Thu, 14 Dec 2023 15:16:43 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EsWZ0dMC0mWxvC/sluMQrW93HBO/Qv6OkORyVh3x4vB8hjaAV/4xPeUI9Yh450k8KKC/AzYYOLuOTuhOOZGQrtpYVAhCFeIT+oBQqNaDYR/a9P3R0GEvMXbTBGZ/K7ZCe4TrDQdSuGLL7z9ZaAMgkTf/UguXVCpZZFQTjmo1u/NeygaU8uXDO6eor3luxCorEUSv0cvT7vPbABNmXHuFLgk3pVgfh71wsw4qfo5HTNPs2XFs2MchHHZIAVE1g1oJ0ERQnrGc0jlOoBJJA1kf6Mclg53GGu0Lafc6Jz+pX0FAqEMx2w/F73IH0ZeXi46IK3uRxtacONkr4cJYMEa8Lw== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=FtWePE67qE2Ha1+D2v2jwmWfos3m8QWu3t5A81z3s18=; b=DXdnEqbG7B/K3+Bb3PauhjPPufp+svKOmFXXePm0C4gjQy7/We+ZBiHqhIJmtWKjq4YSJJlx1wigZ26vIf7xXD956DLpLqX4aDut3KOa8pSM3epKzMA+/OtQdGRN8iTX+mZRNlw+nynR58VC6FcKfTKkK7XTwq2MhLqP6ecDxcUir64I2nbGAU+V8C9HPWpcO9z1WYuQMOwdCjGdWWCk+ufwz3MXlkTx7u2BMXyeSOCFLMryUrMgKvYJTiGD0JMBanV4gE5WDXoa46H3iVa44dI/nj4oD5KxzqLvBZygQGZr6I0jktWiuW/PHVPe5I2T344bvXrvifHZfeJIvWwncg== 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=FtWePE67qE2Ha1+D2v2jwmWfos3m8QWu3t5A81z3s18=; b=F5+iSPbz/CMqr1jMFyW+nigL93PLUh3M2NaeUuZSXLJPr9kcqonvkI5quthbc/Q7Frfd/y8Tv6pyjxNQHXo2undyrGDq8SNYe+b7rS6Ge/SjJoZqGVdFE/JRSN9BFcSePL4uLtkzR0vqnBvrcJ73H+QPvcUAesy+oL38hDjgCTZgMwzDpQRwbXukQer81rAomIMHvBLow0LNmvRB205VtyA7Tb72kNyFZkBzGu+wBfHft5croXD0vp9tLlfHe+cRfrFAhP4JiUZyK236ie7aiupI7H5/7OEzL3g48HxxjGARN80PNifxJl2FyzVW+cMR4N1Gl8du+pdoHAOa4/Az/A== Received: from MW2PR12MB4666.namprd12.prod.outlook.com (2603:10b6:302:13::22) by CH3PR12MB9079.namprd12.prod.outlook.com (2603:10b6:610:1a1::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7091.28; Thu, 14 Dec 2023 14:16:37 +0000 Received: from MW2PR12MB4666.namprd12.prod.outlook.com ([fe80::51e0:745c:8c3:d168]) by MW2PR12MB4666.namprd12.prod.outlook.com ([fe80::51e0:745c:8c3:d168%4]) with mapi id 15.20.7091.028; Thu, 14 Dec 2023 14:16:37 +0000 From: Ori Kam To: Ferruh Yigit , Dariusz Sosnowski , "cristian.dumitrescu@intel.com" , "NBU-Contact-Thomas Monjalon (EXTERNAL)" , Andrew Rybchenko CC: "dev@dpdk.org" , Raslan Darawsheh Subject: RE: [RFC] ethdev: introduce entropy calculation Thread-Topic: [RFC] ethdev: introduce entropy calculation Thread-Index: AQHaK0NZdeihLGfV/EOfSNHR8xriGrCorISAgAABZrA= Date: Thu, 14 Dec 2023 14:16:37 +0000 Message-ID: References: <20231210083100.7893-1-orika@nvidia.com> <7ec96599-6235-4ef5-9bba-6a037815d358@amd.com> In-Reply-To: <7ec96599-6235-4ef5-9bba-6a037815d358@amd.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MW2PR12MB4666:EE_|CH3PR12MB9079:EE_ x-ms-office365-filtering-correlation-id: 0d854204-5adb-4440-7224-08dbfcaf48ba x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: TJ8JJaddbSFNZV9casby72RwawmImxsb/8sC1idG46ijUEH4y3ZvwEsqpUy5+EtOQjI3ytdDcEHPdVlBvAtgCQFVgdc2hMntdbGLPQfJxAmNcDc5DT1Bg2El2aHHSNpW4WIjtPBJKi4aIb5xSkUBN0vinUj6ft17VRvRRVYp2ViuM9kr0sgwT/4TXHpJptwrduwlln4PcQbalQxXVHE13G+yAFZNwLZBHXyKKw6XNms7ZppWC4FVk1OTk4WXnhR5UjtPoKCDFmdwuuukUtpLWXUFuL7tL5u6KjLN+HhnQJ5jm8x2Mop8Fs9Q89lSwSsbQpCW9FjCbr03JyVmGJ4LW6dNWVexilx0QyELUim5YfrMWCDVngbm1M6MpOKiquy2S0xJgUBrtBTxBCt4hSYxZVzjMeiLkK862acH4c4l8ZsAF8bW8VSS5Aq/5da5NmtvDFMQQuif030g0hFyX19FGojQtGdzYNrBUMN7QgwJiWe4HvuSLtQk4c6sKBxgqRKtdPt/w7V/z6UcawI1/iGNGeb8dtye2IjttWtLHiDwGzQXOvvBsETNUHZzVpOhH5GFQUYugp7kFig3woQKWNLc0wyNfsmsoAsaRSIFyo5pZlmmJoPUoIOlxzVGgNX+DJuRFBR547Tw78wQf+uWGjyAjGvQfJbaMhNaJ4zW/HqSgZI= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MW2PR12MB4666.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(39860400002)(396003)(136003)(376002)(366004)(346002)(230173577357003)(230922051799003)(230273577357003)(64100799003)(186009)(451199024)(1800799012)(26005)(38070700009)(41300700001)(83380400001)(52536014)(7696005)(6506007)(86362001)(122000001)(8936002)(71200400001)(53546011)(55016003)(8676002)(4326008)(9686003)(5660300002)(478600001)(38100700002)(76116006)(110136005)(66476007)(66946007)(64756008)(316002)(66556008)(66446008)(54906003)(107886003)(2906002)(33656002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?TGlhUHNpM2x4SXZ4L1NGdmNOOHA2NVJPQlRwcm1nV1RsL0tOZU9RVzJKT0Np?= =?utf-8?B?SVBHTUMrQXRqR2NoUU05RXJoaStaOVlwQkZ2WXlScEMvZG03NEVObDYraFRX?= =?utf-8?B?V1o3eUhsaHNXay8yMVIrWGZNSEF6ejJXcUxwaXZqd2lNK1RQRG9mVnhuV0Vz?= =?utf-8?B?NWlzV2ZoaThOaWtuT0pTcEcrKzlqdGxYSWRDSkFPVjVmVUJpcmtqWFpKVEYw?= =?utf-8?B?bHQrWDdjVVF3dXovWGg0ZzRaay9RbndoRlpZZmJFZDU5bTI5TktkTHBrWkNP?= =?utf-8?B?NTFRVzIwTUQ5T09oMXBLbFRqSDNlM085bk5QQUtBTWQrZUdKQnJXRXRjVy9v?= =?utf-8?B?bU8rK1lLSGtlYkxFelJVT1ZsRUFtbVRLN1NISHZwcUtKaWpoY0lmNy9UY2Ri?= =?utf-8?B?U2N3T3UwSkNMMmc4aGtUaTBYcXBlOFk3UnZVNytHZ0lKSGJ2MUtOaEppVzAx?= =?utf-8?B?Z0crY3J1TVhKTzV5THZlbDlvbHZxMk5EUnpwOUs0MDFFR21kRlpNUWx3d3Nt?= =?utf-8?B?Uk5jV1FMMFBEcURBMlBwdzdZSUhaei9tTDNIU05xQ21tcmV4c1E0b3M5Y0o3?= =?utf-8?B?SGpTVjJXZGdybVpOd1NDYmthTyt1eHFJOGdXeWY0UUJmVS9HZ2M4ckoyWDlY?= =?utf-8?B?bVVCM0NnM1l3N2JmUmxCWkJFODQ4eUlJVmtJS05Sb2pSRjNvdWhQNGt4dFlv?= =?utf-8?B?ZkJGakdGOE0xRUVpQlU4ejZzUWtJME5JdWRoUFY4ek9obTg5a25jNHpBQWNo?= =?utf-8?B?blZHSlpqUngvZjdZU24rdG1rUmRXL2k2eWk0ODltQjZXNUxwYjhpZjJMNkxk?= =?utf-8?B?YzRqTUcxRmhiUmlhWkJzRlpHeDBCN1NQa2NrL0pqelN6eWppZk43K0MwUDFH?= =?utf-8?B?RzdvZkk3clN5Z2lQWkJiNEJHYXRReTZFczBCUHpBV2hTSnVpbE9wQW9YL0xT?= =?utf-8?B?d2NEVXhEVmNFdmxqTEo5WGxzZTg3c0Z4Ky9DTjBVcEEvRmd4SFZKcUgzZy8r?= =?utf-8?B?WDAzTlAvbzdiZWFDSlVQb0ZTR3JyRjdyQlNIMnlKUE9reEcyRWxYQk4ya1Jz?= =?utf-8?B?MXlvV0dqR0hkUzBhVmpvTWNzcXczVTdzdW52aVFtaE9VNURKOUQ4NzBMMHpY?= =?utf-8?B?R1JGUXVGUDgxRU55bkdQd3c4YzZFQ1g0QVF2c2VkcTBXS2E0ZTNIdS94TmRQ?= =?utf-8?B?MVFBVU1SZE5qUTdJZkZJVGRYMHhDejBrWHNnZ0tnZXQwbWpvb2dHQWpFTmtv?= =?utf-8?B?M2QyT0VjOHIzNUE3ZGlkcDlrWS9PTDRxZmJPTVRkRVFVWlRnTHk3OEhlVVFq?= =?utf-8?B?cmhnZHpjVnZ5c0ZOT2Z1KzZIcS9lMnlXdkgvZ2plQzV6WGFlcnBSZGxodHBS?= =?utf-8?B?QTJpMG1GazYrZnc3VTRNM0ZaNmV4WnBmRktneXVBTVJiZ2R1aVBzY3dVNkJQ?= =?utf-8?B?Z3Uwcng5Z0ZieVVGcTU3c0VYZHdxR3hMdU1MQzJINlhJY1I3UzhzVnJKUU5Z?= =?utf-8?B?YysvMGxHYW9VaUV3emFtSFNVc2VETzdOWUQzenZ1cVFBUUV3MlNKc204VThJ?= =?utf-8?B?V0ZqWWNOeUQxMVQ3T3ZwNnFsdXZJcDJlL1JFa2VPN3B5NzhJNVUrODJYMEI4?= =?utf-8?B?cGFBc3JTZ1dBdFpQMnptbFBneUFkdHZEQ0UraDRHRDl1aUYyWFo4VHptWGtR?= =?utf-8?B?R0FteXdiQ3Byeit3R3VOSWNyeXJLbEd6NG9zUTY5MVlXd3QzVGsrOUZ1L1cx?= =?utf-8?B?YVA4YW5tQ21oeU1CK3l5ZGlvSk1iN0w1ZEY0NDFnR3pkMng3VDdsZ0J5NytW?= =?utf-8?B?aEs0S2VYTjR2Q2VlY1Y0dHphSE9YZ3loRUtwdkZIL29ERU9SczJGcU44cUtz?= =?utf-8?B?Q0haYU5WYWJVY202WUlOemZNeldDOUNYb09RSTBHMEl0TlhDVk9nU1RNVU94?= =?utf-8?B?ZjlBWlFBSXRLdVB4bFo3WjE2YTNLbGtnbnJ4VW82QWxhMDVRZ0lQZFhXYzFh?= =?utf-8?B?WmxFMysycmRNcW9wOWZ1UGx2eEFSTDR5OGxRcWJrUjZuM2J0RXhnY3VicDdG?= =?utf-8?B?VVFXZ3hxVVlNbjBGTTluMEdWVFhEWTl2V0E2Q3VMT2toQWw4WHpaVkEwYWcz?= =?utf-8?Q?RcKg=3D?= 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: MW2PR12MB4666.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0d854204-5adb-4440-7224-08dbfcaf48ba X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Dec 2023 14:16:37.2533 (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: kxkjNPxcTErP9TNtbLO71sxcLbhdWg73S9QVX6TW9OvAw8idKwmUK+ICihmEv7TTLBgXHG4fUKd4LIMa5lk+iw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB9079 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 SGkgRmVycnVoLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEZlcnJ1 aCBZaWdpdCA8ZmVycnVoLnlpZ2l0QGFtZC5jb20+DQo+IFNlbnQ6IFRodXJzZGF5LCBEZWNlbWJl ciAxNCwgMjAyMyAxOjM1IFBNDQo+IA0KPiBPbiAxMi8xMC8yMDIzIDg6MzAgQU0sIE9yaSBLYW0g d3JvdGU6DQo+ID4gV2hlbiBvZmZsb2FkaW5nIHJ1bGVzIHdpdGggdGhlIGVuY2FwIGFjdGlvbiwg dGhlIEhXIG1heSBjYWxjdWxhdGUgZW50cm9weQ0KPiBiYXNlZCBvbiB0aGUgZW5jYXAgcHJvdG9j b2wuDQo+ID4gRWFjaCBIVyBjYW4gaW1wbGVtZW50IGEgZGlmZmVyZW50IGFsZ29yaXRobS4NCj4g Pg0KPiANCj4gSGkgT3JpLA0KPiANCj4gQ2FuIHlvdSBwbGVhc2UgcHJvdmlkZSBtb3JlIGRldGFp bHMgd2hhdCB0aGlzICdlbnRyb3B5JyBpcyB1c2VkIGZvciwNCj4gd2hhdCBpcyB0aGUgdXNlY2Fz ZT8NCg0KU3VyZSwgaW4gc29tZSB0dW5uZWwgcHJvdG9jb2xzLCBmb3IgZXhhbXBsZSwgVlhMQU4s IE5WR0UgIGl0IGlzIHBvc3NpYmxlIHRvIGFkZCBlbnRyb3B5IHZhbHVlIGluIG9uZSBvZiB0aGUN CmZpZWxkcyBvZiB0aGUgdHVubmVsLiBJbiBWWExBTiBmb3IgZXhhbXBsZSBpdCBpcyBpbiB0aGUg c291cmNlIHBvcnQsDQpGcm9tIHRoZSBWWExBTiBwcm90b2NvbDoNClNvdXJjZSBQb3J0OiAgSXQg aXMgcmVjb21tZW5kZWQgdGhhdCB0aGUgVURQIHNvdXJjZSBwb3J0IG51bWJlcg0KICAgICAgICAg YmUgY2FsY3VsYXRlZCB1c2luZyBhIGhhc2ggb2YgZmllbGRzIGZyb20gdGhlIGlubmVyIHBhY2tl dCAtLQ0KICAgICAgICAgb25lIGV4YW1wbGUgYmVpbmcgYSBoYXNoIG9mIHRoZSBpbm5lciBFdGhl cm5ldCBmcmFtZSdzIGhlYWRlcnMuDQogICAgICAgICBUaGlzIGlzIHRvIGVuYWJsZSBhIGxldmVs IG9mIGVudHJvcHkgZm9yIHRoZSBFQ01QL2xvYWQtDQogICAgICAgICBiYWxhbmNpbmcgb2YgdGhl IFZNLXRvLVZNIHRyYWZmaWMgYWNyb3NzIHRoZSBWWExBTiBvdmVybGF5Lg0KICAgICAgICAgV2hl biBjYWxjdWxhdGluZyB0aGUgVURQIHNvdXJjZSBwb3J0IG51bWJlciBpbiB0aGlzIG1hbm5lciwg aXQNCiAgICAgICAgIGlzIFJFQ09NTUVOREVEIHRoYXQgdGhlIHZhbHVlIGJlIGluIHRoZSBkeW5h bWljL3ByaXZhdGUgcG9ydA0KICAgICAgICAgcmFuZ2UgNDkxNTItNjU1MzUgW1JGQzYzMzVdLg0K DQpTaW5jZSBlbmNhcCBncm91cHMgbnVtYmVyIG9mIGRpZmZlcmVudCA1IHR1cGxlcyB0b2dldGhl ciwgaWYgSFcgZG9lc27igJl0IGtub3cgaG93IHRvIFJTUw0KYmFzZWQgb24gdGhlIGlubmVyIGFw cGxpY2F0aW9uIHdpbGwgbm90IGJlIGFibGUgdG8gZ2V0IGFueSBkaXN0cmlidXRpb24gb2YgcGFj a2V0cy4NCg0KVGhpcyB2YWx1ZSBpcyB1c2VkIHRvIHJlZmxlY3QgdGhlIGlubmVyIHBhY2tldCBv biB0aGUgb3V0ZXIgaGVhZGVyLCBzbyBkaXN0cmlidXRpb24gd2lsbCBiZSBwb3NzaWJsZS4NCg0K VGhlIG1haW4gdXNlIGNhc2UgaXMsIGlmIGFwcGxpY2F0aW9uIGRvZXMgZnVsbCBvZmZsb2FkIGFu ZCBpbXBsZW1lbnRzIHRoZSBlbmNhcCBvbiB0aGUgUlguDQpGb3IgZXhhbXBsZToNCkluZ3Jlc3Mv RkRCICBtYXRjaCBvbiA1IHR1cGxlIGVuY2FwIHNlbmQgdG8gaGFpcnBpbiAvIGRpZmZlcmVudCBw b3J0IGluIGNhc2Ugb2Ygc3dpdGNoLg0KDQpUaGUgaXNzdWUgc3RhcnRzIHdoZW4gdGhlcmUgaXMg YSBtaXNzIG9uIHRoZSA1IHR1cGxlIHRhYmxlIGZvciBleGFtcGxlLCBkdWUgdG8gc3luIHBhY2tl dC4NCkEgcGFja2V0IGFycml2ZXMgYXQgdGhlIGFwcGxpY2F0aW9uLCBhbmQgdGhlbiB0aGUgYXBw bGljYXRpb24gb2ZmbG9hZHMgdGhlIHJ1bGUuDQpTbyB0aGUgYXBwbGljYXRpb24gbXVzdCBlbmNh cCB0aGUgcGFja2V0IGFuZCBzZXQgdGhlIHNhbWUgZW50cm9weSBhcyB0aGUgSFcgd2lsbCBkbyBm b3IgYWxsIHRoZSByZXN0DQpvZiB0aGUgcGFja2V0cy4NCg0KPiANCj4gDQo+ID4gV2hlbiB0aGUg YXBwbGljYXRpb24gcmVjZWl2ZXMgcGFja2V0cyB0aGF0IHNob3VsZCBoYXZlIGJlZW4NCj4gPiBl bmNhcGVkIGJ5IHRoZSBIVywgYnV0IGRpZG4ndCByZWFjaCB0aGlzIHN0YWdlIHlldCAoZm9yIGV4 YW1wbGUgVENQIFNZTg0KPiBwYWNrZXRzKSwNCj4gPiB0aGVuIHdoZW4gZW5jYXAgaXMgZG9uZSBp biBTVywgYXBwbGljYXRpb24gbXVzdCBhcHBseQ0KPiA+IHRoZSBzYW1lIGVudHJvcHkgY2FsY3Vs YXRpb24gYWxnb3JpdGhtLg0KPiA+PiBVc2luZyB0aGUgbmV3IEFQSSBhcHBsaWNhdGlvbiBjYW4g cmVxdWVzdCB0aGUgUE1EIHRvIGNhbGN1bGF0ZSB0aGUNCj4gPiB2YWx1ZSBhcyBpZiB0aGUgcGFj a2V0IHBhc3NlZCBpbiB0aGUgSFcuDQo+ID4NCj4gDQo+IFNvIGlzIHRoaXMgbmV3IEFQSSBhIGRh dGFwYXRoIEFQST8gSXMgdGhlIGludGVudGlvbiB0aGF0IGFwcGxpY2F0aW9uDQo+IGNhbGwgdGhp cyBBUEkgcGVyIHBhY2tldCB0aGF0IGlzIG1pc3NpbmcgJ2VudHJvcHknIGluZm9ybWF0aW9uPw0K DQpUaGUgYXBwbGljYXRpb24gd2lsbCBjYWxsIHRoaXMgQVBJIHdoZW4gaXQgZ2V0cyBhIHBhY2tl dCB0aGF0IGl0IGtub3dzLCB0aGF0IHRoZSByZXN0IG9mIHRoZQ0KcGFja2V0cyBmcm9tIHRoaXMg Y29ubmVjdGlvbiB3aWxsIGJlIG9mZmxvYWRlZCBhbmQgZW5jYXBlZCBieSB0aGUgSFcuDQooc2Vl IGFib3ZlIGV4cGxhbmF0aW9uKQ0KDQo+IA0KPiA+IFNpZ25lZC1vZmYtYnk6IE9yaSBLYW0gPG9y aWthQG52aWRpYS5jb20+DQo+ID4gLS0tDQo+ID4gIGxpYi9ldGhkZXYvcnRlX2Zsb3cuaCB8IDQ5 DQo+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4gPiAgMSBm aWxlIGNoYW5nZWQsIDQ5IGluc2VydGlvbnMoKykNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9saWIv ZXRoZGV2L3J0ZV9mbG93LmggYi9saWIvZXRoZGV2L3J0ZV9mbG93LmgNCj4gPiBpbmRleCBhZmZk YzgxMjFiLi4zOTg5YjA4OWRkIDEwMDY0NA0KPiA+IC0tLSBhL2xpYi9ldGhkZXYvcnRlX2Zsb3cu aA0KPiA+ICsrKyBiL2xpYi9ldGhkZXYvcnRlX2Zsb3cuaA0KPiA+IEBAIC02NzUzLDYgKzY3NTMs NTUgQEAgcnRlX2Zsb3dfY2FsY190YWJsZV9oYXNoKHVpbnQxNl90IHBvcnRfaWQsIGNvbnN0DQo+ IHN0cnVjdCBydGVfZmxvd190ZW1wbGF0ZV90YWJsZQ0KPiA+ICAJCQkgY29uc3Qgc3RydWN0IHJ0 ZV9mbG93X2l0ZW0gcGF0dGVybltdLCB1aW50OF90DQo+IHBhdHRlcm5fdGVtcGxhdGVfaW5kZXgs DQo+ID4gIAkJCSB1aW50MzJfdCAqaGFzaCwgc3RydWN0IHJ0ZV9mbG93X2Vycm9yICplcnJvcik7 DQo+ID4NCj4gPiArLyoqDQo+ID4gKyAqIEB3YXJuaW5nDQo+ID4gKyAqIEBiIEVYUEVSSU1FTlRB TDogdGhpcyBBUEkgbWF5IGNoYW5nZSB3aXRob3V0IHByaW9yIG5vdGljZS4NCj4gPiArICoNCj4g PiArICogRGVzdGluYXRpb24gZmllbGQgdHlwZSBmb3IgdGhlIGVudHJvcHkgY2FsY3VsYXRpb24u DQo+ID4gKyAqDQo+ID4gKyAqIEBzZWUgZnVuY3Rpb24gcnRlX2Zsb3dfY2FsY19lbmNhcF9lbnRy b3B5DQo+ID4gKyAqLw0KPiA+ICtlbnVtIHJ0ZV9mbG93X2VudHJvcHlfZGVzdCB7DQo+ID4gKwkv KiBDYWxjdWxhdGUgZW50cm9weSBwbGFjZWQgaW4gVURQIHNvdXJjZSBwb3J0IGZpZWxkLiAqLw0K PiA+ICsJUlRFX0ZMT1dfRU5UUk9QWV9ERVNUX1VEUF9TUkNfUE9SVCwNCj4gPiArCS8qIENhbGN1 bGF0ZSBlbnRyb3B5IHBsYWNlZCBpbiBOVkdSRSBmbG93IElEIGZpZWxkLiAqLw0KPiA+ICsJUlRF X0ZMT1dfRU5UUk9QWV9ERVNUX05WR1JFX0ZMT1dfSUQsDQo+ID4gK307DQo+ID4gKw0KPiA+ICsv KioNCj4gPiArICogQHdhcm5pbmcNCj4gPiArICogQGIgRVhQRVJJTUVOVEFMOiB0aGlzIEFQSSBt YXkgY2hhbmdlIHdpdGhvdXQgcHJpb3Igbm90aWNlLg0KPiA+ICsgKg0KPiA+ICsgKiBDYWxjdWxh dGUgdGhlIGVudHJvcHkgZ2VuZXJhdGVkIGJ5IHRoZSBIVyBmb3IgYSBnaXZlbiBwYXR0ZXJuLA0K PiA+ICsgKiB3aGVuIGVuY2Fwc3VsYXRpb24gZmxvdyBhY3Rpb24gaXMgZXhlY3V0ZWQuDQo+ID4g KyAqDQo+ID4gKyAqIEBwYXJhbVtpbl0gcG9ydF9pZA0KPiA+ICsgKiAgIFBvcnQgaWRlbnRpZmll ciBvZiBFdGhlcm5ldCBkZXZpY2UuDQo+ID4gKyAqIEBwYXJhbVtpbl0gcGF0dGVybg0KPiA+ICsg KiAgIFRoZSB2YWx1ZXMgdG8gYmUgdXNlZCBpbiB0aGUgZW50cm9weSBjYWxjdWxhdGlvbi4NCj4g PiArICogQHBhcmFtW2luXSBkZXN0X2ZpZWxkDQo+ID4gKyAqICAgVHlwZSBvZiBkZXN0aW5hdGlv biBmaWVsZCBmb3IgZW50cm9weSBjYWxjdWxhdGlvbi4NCj4gPiArICogQHBhcmFtW291dF0gZW50 cm9weQ0KPiA+ICsgKiAgIFVzZWQgdG8gcmV0dXJuIHRoZSBjYWxjdWxhdGVkIGVudHJvcHkuIEl0 IHdpbGwgYmUgd3JpdHRlbiBpbiBuZXR3b3JrIG9yZGVyLA0KPiA+ICsgKiAgIHNvIGVudHJvcHlb MF0gaXMgdGhlIE1TQi4NCj4gPiArICogICBUaGUgbnVtYmVyIG9mIGJ5dGVzIGlzIGJhc2VkIG9u IHRoZSBkZXN0aW5hdGlvbiBmaWVsZCB0eXBlLg0KPiA+DQo+IA0KPiANCj4gSXMgdGhlIHNpemUg c2FtZSBhcyBmaWVsZCBzaXplIGluIHRoZSAnZGVzdF9maWVsZCc/DQo+IExpa2UgZm9yICdSVEVf RkxPV19FTlRST1BZX0RFU1RfVURQX1NSQ19QT1JUJyBpcyBpdCB0d28gYnl0ZXM/DQoNClllcywN Cj4gDQo+IA0KPiA+ICsgKiBAcGFyYW1bb3V0XSBlcnJvcg0KPiA+ICsgKiAgIFBlcmZvcm0gdmVy Ym9zZSBlcnJvciByZXBvcnRpbmcgaWYgbm90IE5VTEwuDQo+ID4gKyAqICAgUE1EcyBpbml0aWFs aXplIHRoaXMgc3RydWN0dXJlIGluIGNhc2Ugb2YgZXJyb3Igb25seS4NCj4gPiArICoNCj4gPiAr ICogQHJldHVybg0KPiA+ICsgKiAgIC0gKDApIGlmIHN1Y2Nlc3MuDQo+ID4gKyAqICAgLSAoLUVO T0RFVikgaWYgKnBvcnRfaWQqIGludmFsaWQuDQo+ID4gKyAqICAgLSAoLUVOT1RTVVApIGlmIHVu ZGVybHlpbmcgZGV2aWNlIGRvZXMgbm90IHN1cHBvcnQgdGhpcyBmdW5jdGlvbmFsaXR5Lg0KPiA+ ICsgKiAgIC0gKC1FSU5WQUwpIGlmICpwYXR0ZXJuKiBkb2Vzbid0IGhvbGQgZW5vdWdoIGluZm9y bWF0aW9uIHRvIGNhbGN1bGF0ZSB0aGUNCj4gZW50cm9weQ0KPiA+ICsgKiAgICAgICAgICAgICAg IG9yIHRoZSBkZXN0IGlzIG5vdCBzdXBwb3J0ZWQuDQo+ID4gKyAqLw0KPiA+ICtfX3J0ZV9leHBl cmltZW50YWwNCj4gPiAraW50DQo+ID4gK3J0ZV9mbG93X2NhbGNfZW5jYXBfZW50cm9weSh1aW50 MTZfdCBwb3J0X2lkLCBjb25zdCBzdHJ1Y3QgcnRlX2Zsb3dfaXRlbQ0KPiBwYXR0ZXJuW10sDQo+ ID4gKwkJCSAgICBlbnVtIHJ0ZV9mbG93X2VudHJvcHlfZGVzdCBkZXN0X2ZpZWxkLCB1aW50OF90 DQo+ICplbnRyb3B5LA0KPiA+ICsJCQkgICAgc3RydWN0IHJ0ZV9mbG93X2Vycm9yICplcnJvcik7 DQo+ID4gKw0KPiA+ICAjaWZkZWYgX19jcGx1c3BsdXMNCj4gPiAgfQ0KPiA+ICAjZW5kaWYNCg0K