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 E560743B69; Thu, 22 Feb 2024 03:37:40 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5BCA3402CE; Thu, 22 Feb 2024 03:37:40 +0100 (CET) Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2043.outbound.protection.outlook.com [40.107.22.43]) by mails.dpdk.org (Postfix) with ESMTP id E07BB402B9 for ; Thu, 22 Feb 2024 03:37:38 +0100 (CET) ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=XZfQcayjFaqxlvLeznicLUrmSgSxL9Yf3WtmKPuo6qL1HS7mjue+VvF9OyTKH+XxdEfgdYb4F58iKnvrBurJZHRKNFhG8RGy1iCvGODOTVz6tShN8tsP8im+iVZr1v9miljZkhkFMZDO03iYt8z9w6DyxYs7FcO7LkrSDpl39D2yd0yos3HqkzZce1O4bPmpE+pV0JnOkNpvb3EuLq9Mfks0nUCERRC97rm9aAe/8rMbCusSL2y4MCr5dMVsuNpuuew53jAwYHPCcRbEjHneFesUIyCw48DMneLYpPL5vkBzAH5hkGoZwv7xoG7Cz8iF3T/J9zIW2S97B3WzdkHAug== ARC-Message-Signature: i=2; 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=lQaCceyZZlY8n26Sg7WNJNpXJicKUX6qu0Dl5B5k4g4=; b=KjDuM6w8JXGd6nesO3AOjc0tK9PGP840wbHsc04OZY66X0dHKt6UDsZlYyGI3K9/Q+QmPPsWcIKVFGT0oKwdPDDUPkOBAO2Q769e3L3vbHymGc0WOXysguhghpBI/LMnzidCYEQKsbOHH72xT2vJKbgQBWHSHF//Wc7cB+ayipJRrjjKoBAwtmf1wzIeHbALr3KEm+eGA1vAxTH129EYHEG8RyoEk1y98S7DQUwwco/yKVHkgv/YYjqcwjlM2FVADMJ/ccG2MjnLPZrCt/9xkdSd5PeARk8KF/rA9fwQek+Gm/3dYwR4SJKSeE+zdd1S2cX6qT6ZuoqNx6JYniEmAA== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=dpdk.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lQaCceyZZlY8n26Sg7WNJNpXJicKUX6qu0Dl5B5k4g4=; b=DHIj2sONTuGdYOalc/qCYT+KVX79UKKczqIRzI7ZWbTGx8vy7RAicYOqzImqXjWpwxmJkVIvYIcd/CLhvcX6IOFOQKNEHmBX4rjJ1OQpFxUi7D0gqFSqX8gz2V3GgNMVVbQO73P2gXTnfNB3WksgY2xIkNDqiHMbu3c0RODcX4Y= Received: from AM9P250CA0017.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:21c::22) by VI1PR08MB10200.eurprd08.prod.outlook.com (2603:10a6:800:1bd::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7292.39; Thu, 22 Feb 2024 02:37:35 +0000 Received: from AM4PEPF00025F9B.EURPRD83.prod.outlook.com (2603:10a6:20b:21c:cafe::b1) by AM9P250CA0017.outlook.office365.com (2603:10a6:20b:21c::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7292.41 via Frontend Transport; Thu, 22 Feb 2024 02:37:35 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM4PEPF00025F9B.mail.protection.outlook.com (10.167.16.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7339.0 via Frontend Transport; Thu, 22 Feb 2024 02:37:35 +0000 Received: ("Tessian outbound c21fe6ca13cc:v228"); Thu, 22 Feb 2024 02:37:34 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: c725f09fd67496ab X-CR-MTA-TID: 64aa7808 Received: from ecfbf9eaad46.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 61BCA5E6-0180-4860-8475-B6AE95FFAE73.1; Thu, 22 Feb 2024 02:37:28 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ecfbf9eaad46.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 22 Feb 2024 02:37:28 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XsDaXg36Xabj71LTF4HRHrWU7LJBu7BtFefcvEb9vmUpbpdy6mP2q5WMoAywBKLoi/j+54Pz1Q0m/0EyfV4U6OS48rCzT0uUwZdxq/6kui4ooJ5IbLJBdj4DGhwisNY4PbbbmK4zc6Mx//NwQ1OVpeVvgA/J9OSjjKVPDZfAjv0jtWPyno3tFn7B+pUfgQvxfEtA8H/Pn6hPaedhJcUw23cI5YMfBpwqhXbgWq2df9fURDlsVT5PUHzRfW0ecyF3bRI8R93CW/qm/CJgKI483j8f+vZXw//8twV5aHh2oUIjtKF7qx+kffD3rRG9Mst0VPR/KCcQ6CF26cdQMDeL2w== 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=lQaCceyZZlY8n26Sg7WNJNpXJicKUX6qu0Dl5B5k4g4=; b=E7XVlXNfoBaVj1lRIkqYOc/BLpGU97l5urxMgWltzLkMOPKHmT8otlEdmhCRAOexGJBeWU2Zols6rFqGKXJ5Aq51R6f9Wra/MyfmnULh0l/ToP0eHRy86Rv3Las7JPbeaE6vr58/vSE1ek/H9WzfMe//xw4QnHsaGxD8r7tqhdRDIpm3la8hgSGnXyXMrQdMoMPyykditsxabzW7kseISK7V2TnTInBFX5jNUQB+dgVYsjSxbGb8nFXNLL3y6RRlrNqFAYnmaROAC06/PcmOcYVWO740sxA3e9xnCQ7jdwwJx3RRm5HVv1etB/aSQZDCZOKs7cxEXY6RoVnywe1VwA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lQaCceyZZlY8n26Sg7WNJNpXJicKUX6qu0Dl5B5k4g4=; b=DHIj2sONTuGdYOalc/qCYT+KVX79UKKczqIRzI7ZWbTGx8vy7RAicYOqzImqXjWpwxmJkVIvYIcd/CLhvcX6IOFOQKNEHmBX4rjJ1OQpFxUi7D0gqFSqX8gz2V3GgNMVVbQO73P2gXTnfNB3WksgY2xIkNDqiHMbu3c0RODcX4Y= Received: from DBAPR08MB5814.eurprd08.prod.outlook.com (2603:10a6:10:1b1::6) by PR3PR08MB5786.eurprd08.prod.outlook.com (2603:10a6:102:85::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7292.39; Thu, 22 Feb 2024 02:37:26 +0000 Received: from DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::ee47:c96a:3e95:14b6]) by DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::ee47:c96a:3e95:14b6%6]) with mapi id 15.20.7316.023; Thu, 22 Feb 2024 02:37:25 +0000 From: Honnappa Nagarahalli To: =?utf-8?B?QWJkdWxsYWggw5ZtZXIgWWFtYcOn?= CC: "Medvedkin, Vladimir" , "dev@dpdk.org" , Yipeng Wang , Sameh Gobriel , Bruce Richardson , "thomas@monjalon.net" , nd Subject: Re: [PATCH] lib/hash,lib/rcu: feature hidden key count in hash Thread-Topic: [PATCH] lib/hash,lib/rcu: feature hidden key count in hash Thread-Index: AQHaWdsUp7R5SbED7k6jnkoiEtQNR7ESAJEAgABBAICAACNMgIABRSOAgACM8wCAATV1gIAAT/gA Date: Thu, 22 Feb 2024 02:37:25 +0000 Message-ID: <772E05E7-716C-4A41-8C75-7323D9D745BC@arm.com> References: <20240207153340.34146-1-aomeryamac@gmail.com> <4CC50196-1F8F-40E2-8280-261783FDCFC8@arm.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3774.400.31) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: DBAPR08MB5814:EE_|PR3PR08MB5786:EE_|AM4PEPF00025F9B:EE_|VI1PR08MB10200:EE_ X-MS-Office365-Filtering-Correlation-Id: b4d43d1a-7cc9-4dd7-f506-08dc334f3a3e x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: D8HaqXe1qNS+iLWztnE+FpENfbvMwl1GLI7G4y955q5xj4vrIgmOWigvWXr3epxWm1bBImHYDL5Md/iWVLFaInfOOjjqo+MAh0Y2pTGzXF88UQc8ez4cyHQc1RjEmnrm81ykrTmPOY2JKtIZInzx3nWrZzJfaLsffqG+QYEdyduid9AmQnuQwLMRGSfk5aUEVTTQpMVL23k9ggRzkX9kR2a2Han/a+U+aAa/x392oOBgygqglmcq4EuK9ayhoaQARHbP6pK16M0is8lINr2Y8VBfXkcomFb9w8ilMxMDCDFOS81ISjWc0EoXNL6XxOUp10ReL/zvsjfscFB3354kK0QiHbNaCzflilyTJDXeAl2KCU98IorLhrgVcaBom2QR6p++4aJE+dNe1ukE7UvX4U90DQu47z88B3XRRQic8rW/+r01QfJOub6rt7Z4nl9r3JsPW9Uil30gIw3kas1QivXhoBtvPq7kZ5DJh3Nz05jmodyYeXb0Os/cqboDQ3dO5RXZP8JfBbOiZf9DaTq3BmabalukLXsspRodx/v+Wh+XtTa4nDMFkkQXnQRdKXX5Sz1IFqcXNBBDLdc2XGVlHhY7fWH7x/idD66boCPwEEYSy7rpvyee4SAJQtwaaWtr X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DBAPR08MB5814.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(38070700009); DIR:OUT; SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5786 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM4PEPF00025F9B.EURPRD83.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 4222c7e5-945a-4722-a327-08dc334f3486 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: elqaGmwt/lAG0RE6gcPTyo6huy2iCFkAZc8VdGw02GCec5QeUqDi741JwjOhndWxFiu+B7p0EgUeNkn96sAOX7hwL7cmO7x75TUCn5Odbc3y68BZDeUEl4mRIabIGmiRqOCmwmkclsDUrbfBjpQNL+Cg9x+4zLPHWOFv+lqgEsHc8901o1eN3NvNc27KWhuOTXsACFNKnI2A5sAG+najIuNxC6CKTAL+8KDhwyV822bQh3CL4ixI7r3I74R84SVtJpZniUFxP7H9bgRpG+J9Y8EUJOF16YSb2g0ThcIZHTXYSEQaf8bQYAnCwP1qlFGvvYa59c0AglddpW6zXgfq/YKtrNIQBpHlb3Hr9gZDQZzhusHL37wJ7FHuk8yTR+cAO4rjHkG+AM+maiqKZbertSMnMBjnKe+RGTBs59kRJHFyjPM9Yp9AJDbz22/s4sdruxbk6BU2fL3iGb0PFLR/6vLKmvAmRzLAmYYEg4wcisomjRnf16/fWRLEbfRsZ1sJre5SrwEJq0lVh9YUHjh1XRlgak0K1Y6yAt7qp57ddeFvoYUg12zJ3uRDNKJlDJ2L6Kv/TqLZeEPCZOs35dZcPQOG6S15Wb7oZirM/Vu3G4KEajIjJ2taQFENWqDEVmCVLWhX/KeE+xaVYb9t3/rzycfB03jmDZ9K8LAZCWKbXYI= X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230031)(36860700004)(40470700004)(46966006); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Feb 2024 02:37:35.1780 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b4d43d1a-7cc9-4dd7-f506-08dc334f3a3e X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM4PEPF00025F9B.EURPRD83.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB10200 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 DQoNCj4gT24gRmViIDIxLCAyMDI0LCBhdCAzOjUx4oCvUE0sIEFiZHVsbGFoIMOWbWVyIFlhbWHD pyA8YW9tZXJ5YW1hY0BnbWFpbC5jb20+IHdyb3RlOg0KPiANCj4gDQo+IA0KPiBPbiBXZWQsIEZl YiAyMSwgMjAyNCBhdCA2OjI04oCvQU0gSG9ubmFwcGEgTmFnYXJhaGFsbGkgPEhvbm5hcHBhLk5h Z2FyYWhhbGxpQGFybS5jb20+IHdyb3RlOg0KPiANCj4gDQo+ID4gT24gRmViIDIwLCAyMDI0LCBh dCAxMjo1OOKAr1BNLCBBYmR1bGxhaCDDlm1lciBZYW1hw6cgPGFvbWVyeWFtYWNAZ21haWwuY29t PiB3cm90ZToNCj4gPiANCj4gPiBJIGFwcHJlY2lhdGUgdGhhdCB5b3UgZ2F2ZSBtZSBzdWdnZXN0 aW9ucyBhbmQgY29tbWVudHMuIEkgd2lsbCBtYWtlIGNoYW5nZXMgYWNjb3JkaW5nIHRvIGFsbCB5 b3VyIHJlY29tbWVuZGF0aW9ucywgYnV0IGJlZm9yZSB0aGF0LCBJIHdhbnQgdG8gbWFrZSBldmVy eW9uZSdzIG1pbmRzIGNsZWFyLiBUaGVuLCBJIHdpbGwgYXBwbHkgbW9kaWZpY2F0aW9ucy4gDQo+ ID4gDQo+ID4gT24gVHVlLCBGZWIgMjAsIDIwMjQgYXQgMjozNeKAr0FNIEhvbm5hcHBhIE5hZ2Fy YWhhbGxpIDxIb25uYXBwYS5OYWdhcmFoYWxsaUBhcm0uY29tPiB3cm90ZToNCj4gPiANCj4gPiAN Cj4gPiA+IE9uIEZlYiAxOSwgMjAyNCwgYXQgMzoyOOKAr1BNLCBBYmR1bGxhaCDDlm1lciBZYW1h w6cgPGFvbWVyeWFtYWNAZ21haWwuY29tPiB3cm90ZToNCj4gPiA+IA0KPiA+ID4gSGVsbG8sDQo+ ID4gPiANCj4gPiA+IExldCBtZSBleHBsYWluIGEgdXNlIGNhc2U7DQo+ID4gPiANCj4gPiA+IEkg aGF2ZSBhIGhhc2ggdGFibGUgd2hvc2Uga2V5IHZhbHVlIGlzIElQIGFkZHJlc3NlcywgYW5kIGRh dGEgKGxldCdzIHNheSB0aGUgdXNlcm5hbWUgb2YgdGhlIElQKSBpcyByZWxhdGVkIHRvIHRoZSBJ UCBhZGRyZXNzLiBUaGUga2V5IHBvaW50IGlzIG1hdGNoaW5nIHRoZXNlIGRhdGEgd2l0aCBmbG93 cy4gRmxvd3MgYXJlIGR5bmFtaWMsIGFuZCB0aGlzIGhhc2ggdGFibGUgaXMgZHluYW1pYywgYXMg d2VsbDsgYm90aCBjYW4gY2hhbmdlIGFueXRpbWUuIEZvciBleGFtcGxlLCB3aGVuIGEgZmxvdyBz dGFydHMsIHdlIGxvb2sgdXAgdGhlIGhhc2ggdGFibGUgd2l0aCB0aGUgY29ycmVzcG9uZGluZyBJ UCBhbmQgcmV0cmlldmUgdGhlIHVzZXJuYW1lLiBXZSBuZWVkIHRvIGhvbGQgdGhpcyB1c2VybmFt ZSB1bnRpbCB0aGUgZmxvdyB0ZXJtaW5hdGVzLCBhbHRob3VnaCB3ZSByZW1vdmVkIHRoaXMgSVAg a2V5IGZyb20gdGhlIGhhc2ggdGFibGUgKG11bHRpdGhyZWFkKS4gVGhhdCdzIHdoeSB3ZSBoYXZl IFJDVSBhbmQgZGVmZXIgcXVldWUgaXMgbmVjZXNzYXJ5IGZvciBoaWdoIHBlcmZvcm1hbmNlLiBJ biBteSBhcHBsaWNhdGlvbiwgSSBuZWVkIHRvIGtub3cgdGhlIG51bWJlciBvZiBJUC11c2VybmFt ZSBlbnRyaWVzLiBUaGVzZSBudW1iZXJzIGNhbiBiZSBjYWxjdWxhdGVkIGJ5IHJ0ZV9oYXNoX2Nv dW50IC0gZGVmZXIgcXVldWUgc2l6ZS4NCj4gPiBUaGUgZW50cmllcyBpbiB0aGUgZGVmZXIgcXVl dWUgYXJlIG5vdCByZWNsYWltZWQgKHRoZXJlIGlzIGEgcHJvYmFiaWxpdHkgdGhhdCBhbGwgb2Yg dGhlbSBjYW4gYmUgcmVjbGFpbWVkKSBhbmQgaGVuY2UgdGhleSBhcmUgbm90IGF2YWlsYWJsZSBm b3IgYWxsb2NhdGlvbi4gU28sIHJ0ZV9oYXNoX2NvdW50IC0gZGVmZXIgcXVldWUgc2l6ZSBtaWdo dCBub3QgZ2l2ZSB5b3UgdGhlIGNvcnJlY3QgbnVtYmVyIHlvdSBhcmUgZXhwZWN0aW5nLg0KPiA+ IA0KPiA+IEN1cnJlbnRseSwgdGhlcmUgaXMgbm8gQVBJIGluIGhhc2ggbGlicmFyeSB0aGF0IGZv cmNlcyBhIHJlY2xhaW0uIERvZXMgaXQgbWFrZXMgc2Vuc2UgdG8gaGF2ZSBhbiBBUEkgdGhhdCBq dXN0IGRvZXMgdGhlIHJlY2xhaW0gKGFuZCByZXR1cm5zIHRoZSBudW1iZXIgb2YgZW50cmllcyBw ZW5kaW5nIGluIHRoZSBkZWZlciBxdWV1ZSk/IEEgY2FsbCB0byBydGVfaGFzaF9jb3VudCBzaG91 bGQgcHJvdmlkZSB0aGUgZXhhY3QgY291bnQgeW91IGFyZSBsb29raW5nIGZvci4NCj4gPiBZb3Ug YXJlIHJpZ2h0OyBubyBBUEkgaW4gdGhlIGhhc2ggbGlicmFyeSBmb3JjZXMgYSByZWNsYWltLiBJ biBteSBhcHBsaWNhdGlvbiwgSSBwZXJpb2RpY2FsbHkgY2FsbCBydGVfY291bnQgdG8gcmV0cmll dmUgaGFzaCBzaXplLCBhbmQgdGhpcyBkYXRhIGlzIHNob3duIGluIG15IEdVSS4gU28gdGhhdCBt ZWFucyBJIG5lZWQgdG8gY2FsbCByZWd1bGFybHkgcmVjbGFpbS4gSSBhbSB0cnlpbmcgdG8gZmln dXJlIG91dCB3aGljaCBpcyBiZXR0ZXIsIGNhbGxpbmcgcmVjbGFpbSBvciByZXRyaWV2aW5nIHRo ZSBkZWZlciBxdWV1ZSBzaXplLiBBbnkgY29tbWVudCBhYm91dCB0aGlzPw0KPiBSZXRyaWV2aW5n IHRoZSBkZWZlciBxdWV1ZSBzaXplIHdpbGwgYmUgY2hlYXBlci4gSG93ZXZlciwgY2FsbGluZyB0 aGUgcmVjbGFpbSBBUEkgd2lsbCBlbnN1cmUgdGhlIGVudHJpZXMgYXJlIGZyZWVkIGhlbmNlIHBy b3ZpZGluZyBhbiBhY2N1cmF0ZSBudW1iZXIuIENhbGxpbmcgdGhlIHJlY2xhaW0gQVBJIG9uIGFu IGVtcHR5IGRlZmVyIHF1ZXVlIGRvZXMgbm90IGNvbnN1bWUgbWFueSBjeWNsZXMuIElmIG5lZWRl ZCB3ZSBjb3VsZCBhZGQgYSBjaGVjayBmb3IgZW1wdHkgZGVmZXIgcXVldWUgaW4gdGhlIHJlY2xh aW0gQVBJIGFuZCByZXR1cm4gZWFybHkuDQo+IA0KPiBJIGFtIGFsc28gd29uZGVyaW5nIGlmIGEg cmVjbGFpbSBBUEkgaW4gaGFzaCBsaWJyYXJ5IGlzIG5lZWRlZC4gV2h5IG5vdCBjYWxsIHJ0ZV9y Y3VfcXNicl9kcV9yZWNsYWltIEFQSSBmcm9tIHRoZSBhcHBsaWNhdGlvbj8NCj4gVGhlIHJlYXNv biBpcyBzaW1wbGUuIHN0cnVjdCBydGVfaGFzaCAqaCBpcyBhbiBpbnRlcm5hbCBzdHJ1Y3R1cmUg YW5kIHdlIGNhbm5vdCBhY2Nlc3MgdGhlIGgtPmRxLiBTbyBpdCBpcyBub3QgcG9zc2libGUgdG8g Y2FsbCByZWNsYWltLg0KQWNrLiBUaGlzIHdpbGwgYmUganVzdCBhIHdyYXBwZXIgYXJvdW5kIHRo ZSBydGVfcmN1X3FzYnJfZHFfcmVjbGFpbS4NCg0KPiANCj4gDQo+ID4gPiANCj4gPiA+IEkgdGhp bmsgaWYgeW91IG5lZWQgYSBub24tYmxvY2tpbmcgYW5kIG11bHRpdGhyZWFkZWQgaGFzaCB0YWJs ZSwgYW4gUkNVLWVuYWJsZWQgaGFzaCB0YWJsZSBpcyBuZWNlc3NhcnkuIEFsc28sIHRoaXMgQVBJ IGlzIG5lY2Vzc2FyeSBpZiB5b3UgbmVlZCB0byBnZXQgdGhlIGFjdHVhbCBtYXRjaGFibGUgc2l6 ZS4NCj4gPiA+IA0KPiA+ID4gDQo+ID4gPiANCj4gPiA+IA0KPiA+ID4gDQo+ID4gPiBPbiBNb24s IEZlYiAxOSwgMjAyNCBhdCA4OjM24oCvUE0gTWVkdmVka2luLCBWbGFkaW1pciA8dmxhZGltaXIu bWVkdmVka2luQGludGVsLmNvbT4gd3JvdGU6DQo+ID4gPiBIaSBBYmR1bGxhaCwNCj4gPiA+IA0K PiA+ID4gQ291bGQgeW91IHBsZWFzZSB0ZWxsIG1vcmUgYWJvdXQgdXNlIGNhc2VzIHdoZXJlIHRo aXMgQVBJIG1heSBiZSB1c2VmdWw/DQo+ID4gPiANCj4gPiA+ID5hIG5ldyBBUEkgdG8gZ2V0IHRo ZSBoaWRkZW4ga2V5IGNvdW50IGluIHRoZSBoYXNoIHRhYmxlIGlmIHRoZSByY3UgcXNiciBpcyBl bmFibGVkDQo+ID4gPiANCj4gPiA+IEhlcmUgaW4gY29tbWl0IG1lc3NhZ2UgYW5kIGRvd24gYmVs b3cgaW4gZG94eWdlbiBjb21tZW50cywgSSB0aGluayB0aGlzIA0KPiA+ID4gc3RhdGVtZW50IHNo b3VsZCBiZSBtb3JlIHNwZWNpZmljIGJlY2F1c2UgcmN1IGNhbiBiZSBjcmVhdGVkIHdpdGggDQo+ ID4gPiBSVEVfSEFTSF9RU0JSX01PREVfU1lOQyBtb2RlIGkuZS4gd2l0aG91dCBkZWZlciBxdWV1 ZS4NCj4gPiA+IA0KPiA+ID4gQWxzbywgbmV3IEFQSSBtdXN0IGJlIHJlZmxlY3RlZCBpbiByZWxl YXNlIG5vdGVzDQo+ID4gPiANCj4gPiA+IE9uIDA3LzAyLzIwMjQgMTU6MzMsIEFiZHVsbGFoIMOW bWVyIFlhbWHDpyB3cm90ZToNCj4gPiA+ID4gVGhpcyBwYXRjaCBpbnRyb2R1Y2UgYSBuZXcgQVBJ IHRvIGdldCB0aGUgaGlkZGVuIGtleSBjb3VudCBpbiB0aGUgaGFzaA0KPiA+ID4gPiB0YWJsZSBp ZiB0aGUgcmN1IHFzYnIgaXMgZW5hYmxlZC4gV2hlbiB1c2luZyBydGVfaGFzaF9jb3VudCB3aXRo IHJjdQ0KPiA+ID4gPiBxc2JyIGVuYWJsZWQsIGl0IHdpbGwgcmV0dXJuIHRoZSBudW1iZXIgb2Yg ZWxlbWVudHMgdGhhdCBhcmUgbm90IGluIHRoZQ0KPiA+ID4gPiBmcmVlIHF1ZXVlLiBVbmxlc3Mg cnRlX3JjdV9xc2JyX2RxX3JlY2xhaW0gaXMgY2FsbGVkLCB0aGUgbnVtYmVyIG9mDQo+ID4gPiA+ IGVsZW1lbnRzIGluIHRoZSBkZWZlciBxdWV1ZSB3aWxsIG5vdCBiZSBjb3VudGVkIGFuZCBmcmVl ZC4gVGhlcmVmb3JlIEkNCj4gPiA+ID4gYWRkZWQgYSBuZXcgQVBJIHRvIGdldCB0aGUgbnVtYmVy IG9mIGhpZGRlbiAoZGVmZXIgcXVldWUpIGVsZW1lbnRzDQo+ID4gPiA+IGluIHRoZSBoYXNoIHRh YmxlLiBUaGVuIHRoZSB1c2VyIGNhbiBjYWxjdWxhdGUgdGhlIHRvdGFsIG51bWJlciBvZg0KPiA+ ID4gPiBlbGVtZW50cyB0aGF0IGFyZSBhdmFpbGFibGUgaW4gdGhlIGhhc2ggdGFibGUuDQo+ID4g PiA+DQo+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IEFiZHVsbGFoIMOWbWVyIFlhbWHDpyA8YW9tZXJ5 YW1hY0BnbWFpbC5jb20+DQo+ID4gPiA+DQo+ID4gPiA+IC0tLQ0KPiA+ID4gPiBDYzogSG9ubmFw cGEgTmFnYXJhaGFsbGkgPGhvbm5hcHBhLm5hZ2FyYWhhbGxpQGFybS5jb20+DQo+ID4gPiA+IENj OiBZaXBlbmcgV2FuZyA8eWlwZW5nMS53YW5nQGludGVsLmNvbT4NCj4gPiA+ID4gQ2M6IFNhbWVo IEdvYnJpZWwgPHNhbWVoLmdvYnJpZWxAaW50ZWwuY29tPg0KPiA+ID4gPiBDYzogQnJ1Y2UgUmlj aGFyZHNvbiA8YnJ1Y2UucmljaGFyZHNvbkBpbnRlbC5jb20+DQo+ID4gPiA+IENjOiBWbGFkaW1p ciBNZWR2ZWRraW4gPHZsYWRpbWlyLm1lZHZlZGtpbkBpbnRlbC5jb20+DQo+ID4gPiA+IC0tLQ0K PiA+ID4gPiAgIGxpYi9oYXNoL3J0ZV9jdWNrb29faGFzaC5jIHwgIDkgKysrKysrKysrDQo+ID4g PiA+ICAgbGliL2hhc2gvcnRlX2hhc2guaCAgICAgICAgfCAxMyArKysrKysrKysrKysrDQo+ID4g PiA+ICAgbGliL2hhc2gvdmVyc2lvbi5tYXAgICAgICAgfCAgMSArDQo+ID4gPiA+ICAgbGliL3Jj dS9ydGVfcmN1X3FzYnIuYyAgICAgfCAgOCArKysrKysrKw0KPiA+ID4gPiAgIGxpYi9yY3UvcnRl X3JjdV9xc2JyLmggICAgIHwgMTEgKysrKysrKysrKysNCj4gPiA+ID4gICBsaWIvcmN1L3ZlcnNp b24ubWFwICAgICAgICB8ICAxICsNCj4gPiA+ID4gICA2IGZpbGVzIGNoYW5nZWQsIDQzIGluc2Vy dGlvbnMoKykNCj4gPiA+ID4NCj4gPiA+ID4gZGlmZiAtLWdpdCBhL2xpYi9oYXNoL3J0ZV9jdWNr b29faGFzaC5jIGIvbGliL2hhc2gvcnRlX2N1Y2tvb19oYXNoLmMNCj4gPiA+ID4gaW5kZXggNzA0 NTY3NTRjNC4uMzU1M2YzZWZjNyAxMDA2NDQNCj4gPiA+ID4gLS0tIGEvbGliL2hhc2gvcnRlX2N1 Y2tvb19oYXNoLmMNCj4gPiA+ID4gKysrIGIvbGliL2hhc2gvcnRlX2N1Y2tvb19oYXNoLmMNCj4g PiA+ID4gQEAgLTU1NSw2ICs1NTUsMTUgQEAgcnRlX2hhc2hfbWF4X2tleV9pZChjb25zdCBzdHJ1 Y3QgcnRlX2hhc2ggKmgpDQo+ID4gPiA+ICAgICAgICAgICAgICAgcmV0dXJuIGgtPmVudHJpZXM7 DQo+ID4gPiA+ICAgfQ0KPiA+ID4gPiAgIA0KPiA+ID4gPiAraW50MzJfdA0KPiA+ID4gPiArcnRl X2hhc2hfZHFfY291bnQoY29uc3Qgc3RydWN0IHJ0ZV9oYXNoICpoKQ0KPiA+ID4gPiArew0KPiA+ ID4gPiArICAgICBpZiAoaC0+ZHEgPT0gTlVMTCkNCj4gPiA+IGlucHV0IGFyZ3VtZW50cyBtdXN0 IGJlIGNoZWNrZWQgc2luY2UgdGhpcyBpcyBhIHB1YmxpYyBBUEksIHRoZSBzYW1lIGlzIA0KPiA+ ID4gdHJ1ZSBmb3IgcnRlX3JjdV9xc2JyX2RxX2NvdW50KCkNCj4gPiA+ID4gKyAgICAgICAgICAg ICByZXR1cm4gLUVJTlZBTDsNCj4gPiA+IHdoeSBub3QganVzdCByZXR1cm4gMD8NCj4gPiA+ID4g Kw0KPiA+ID4gPiArICAgICByZXR1cm4gcnRlX3JjdV9xc2JyX2RxX2NvdW50KGgtPmRxKTsNCj4g PiA+ID4gK30NCj4gPiA+ID4gKw0KPiA+ID4gPiAgIGludDMyX3QNCj4gPiA+ID4gICBydGVfaGFz aF9jb3VudChjb25zdCBzdHJ1Y3QgcnRlX2hhc2ggKmgpDQo+ID4gPiA+ICAgew0KPiA+ID4gPiBk aWZmIC0tZ2l0IGEvbGliL2hhc2gvcnRlX2hhc2guaCBiL2xpYi9oYXNoL3J0ZV9oYXNoLmgNCj4g PiA+ID4gaW5kZXggN2VjYzAyMTExMS4uOGVhOTdlMjk3ZCAxMDA2NDQNCj4gPiA+ID4gLS0tIGEv bGliL2hhc2gvcnRlX2hhc2guaA0KPiA+ID4gPiArKysgYi9saWIvaGFzaC9ydGVfaGFzaC5oDQo+ ID4gPiA+IEBAIC0xOTMsNiArMTkzLDE5IEBAIHJ0ZV9oYXNoX2ZyZWUoc3RydWN0IHJ0ZV9oYXNo ICpoKTsNCj4gPiA+ID4gICB2b2lkDQo+ID4gPiA+ICAgcnRlX2hhc2hfcmVzZXQoc3RydWN0IHJ0 ZV9oYXNoICpoKTsNCj4gPiA+ID4gICANCj4gPiA+ID4gKw0KPiA+ID4gPiArLyoqDQo+ID4gPiA+ ICsgKiBSZXR1cm4gdGhlIG51bWJlciBvZiByZWNvcmRzIGluIHRoZSBkZWZlciBxdWV1ZSBvZiB0 aGUgaGFzaCB0YWJsZQ0KPiA+ID4gPiArICogaWYgUkNVIGlzIGVuYWJsZWQuDQo+ID4gPiA+ICsg KiBAcGFyYW0gaA0KPiA+ID4gPiArICogIEhhc2ggdGFibGUgdG8gcXVlcnkgZnJvbQ0KPiA+ID4g PiArICogQHJldHVybg0KPiA+ID4gPiArICogICAtIC1FSU5WQUwgaWYgcGFyYW1ldGVycyBhcmUg aW52YWxpZA0KPiA+ID4gPiArICogICAtIEEgdmFsdWUgaW5kaWNhdGluZyBob3cgbWFueSByZWNv cmRzIHdlcmUgaW5zZXJ0ZWQgaW4gdGhlIHRhYmxlLg0KPiA+ID4gZGlkIHlvdSBtZWFuIGhvdyBt YW55IHJlY29yZHMgYXJlIGtlcHQgaW4gZGVmZXIgcXVldWU/DQo+ID4gPiA+ICsgKi8NCj4gPiA+ ID4gK2ludDMyX3QNCj4gPiA+ID4gK3J0ZV9oYXNoX2RxX2NvdW50KGNvbnN0IHN0cnVjdCBydGVf aGFzaCAqaCk7DQo+ID4gPiA+ICsNCj4gPiA+ID4gICAvKioNCj4gPiA+ID4gICAgKiBSZXR1cm4g dGhlIG51bWJlciBvZiBrZXlzIGluIHRoZSBoYXNoIHRhYmxlDQo+ID4gPiA+ICAgICogQHBhcmFt IGgNCj4gPiA+ID4gZGlmZiAtLWdpdCBhL2xpYi9oYXNoL3ZlcnNpb24ubWFwIGIvbGliL2hhc2gv dmVyc2lvbi5tYXANCj4gPiA+ID4gaW5kZXggNmIyYWZlYmY2Yi4uN2Y3YjE1OGNmMSAxMDA2NDQN Cj4gPiA+ID4gLS0tIGEvbGliL2hhc2gvdmVyc2lvbi5tYXANCj4gPiA+ID4gKysrIGIvbGliL2hh c2gvdmVyc2lvbi5tYXANCj4gPiA+ID4gQEAgLTksNiArOSw3IEBAIERQREtfMjQgew0KPiA+ID4g PiAgICAgICBydGVfaGFzaF9hZGRfa2V5X3dpdGhfaGFzaDsNCj4gPiA+ID4gICAgICAgcnRlX2hh c2hfYWRkX2tleV93aXRoX2hhc2hfZGF0YTsNCj4gPiA+ID4gICAgICAgcnRlX2hhc2hfY291bnQ7 DQo+ID4gPiA+ICsgICAgIHJ0ZV9oYXNoX2RxX2NvdW50Ow0KPiA+ID4gbmV3IEFQSSBtdXN0IGlu dHJvZHVjZWQgYXMgYW4gZXhwZXJpbWVudGFsIEFQSS4gVGhlIHNhbWUgaXMgdHJ1ZSBmb3IgDQo+ ID4gPiBydGVfcmN1X3FzYnJfZHFfY291bnQoKQ0KPiA+ID4gPiAgICAgICBydGVfaGFzaF9jcmMz Ml9hbGc7DQo+ID4gPiA+ICAgICAgIHJ0ZV9oYXNoX2NyY19zZXRfYWxnOw0KPiA+ID4gPiAgICAg ICBydGVfaGFzaF9jcmVhdGU7DQo+ID4gPiA+IGRpZmYgLS1naXQgYS9saWIvcmN1L3J0ZV9yY3Vf cXNici5jIGIvbGliL3JjdS9ydGVfcmN1X3FzYnIuYw0KPiA+ID4gPiBpbmRleCBiZDBiODNiZTBj Li44OWY4ZGE0YzRjIDEwMDY0NA0KPiA+ID4gPiAtLS0gYS9saWIvcmN1L3J0ZV9yY3VfcXNici5j DQo+ID4gPiA+ICsrKyBiL2xpYi9yY3UvcnRlX3JjdV9xc2JyLmMNCj4gPiA+ID4gQEAgLTQ1MCw2 ICs0NTAsMTQgQEAgcnRlX3JjdV9xc2JyX2RxX3JlY2xhaW0oc3RydWN0IHJ0ZV9yY3VfcXNicl9k cSAqZHEsIHVuc2lnbmVkIGludCBuLA0KPiA+ID4gPiAgICAgICByZXR1cm4gMDsNCj4gPiA+ID4g ICB9DQo+ID4gPiA+ICAgDQo+ID4gPiA+ICsvKioNCj4gPiA+ID4gKyAqIFJldHVybiB0aGUgbnVt YmVyIG9mIGVudHJpZXMgaW4gYSBkZWZlciBxdWV1ZS4NCj4gPiA+ID4gKyAqLw0KPiA+ID4gPiAr dW5zaWduZWQgaW50IHJ0ZV9yY3VfcXNicl9kcV9jb3VudChzdHJ1Y3QgcnRlX3JjdV9xc2JyX2Rx ICpkcSkNCj4gPiA+ID4gK3sNCj4gPiBQbGVhc2UgdmFsaWRhdGUgZHEgaGVyZS4NCj4gPiANCj4g PiA+ID4gKyAgICAgcmV0dXJuIHJ0ZV9yaW5nX2NvdW50KGRxLT5yKTsNCj4gPiA+ID4gK30NCj4g PiA+ID4gKw0KPiA+ID4gPiAgIC8qIERlbGV0ZSBhIGRlZmVyIHF1ZXVlLiAqLw0KPiA+ID4gPiAg IGludA0KPiA+ID4gPiAgIHJ0ZV9yY3VfcXNicl9kcV9kZWxldGUoc3RydWN0IHJ0ZV9yY3VfcXNi cl9kcSAqZHEpDQo+ID4gPiA+IGRpZmYgLS1naXQgYS9saWIvcmN1L3J0ZV9yY3VfcXNici5oIGIv bGliL3JjdS9ydGVfcmN1X3FzYnIuaA0KPiA+ID4gPiBpbmRleCAyM2M5Zjg5ODA1Li5lZDVhNTkw ZWRkIDEwMDY0NA0KPiA+ID4gPiAtLS0gYS9saWIvcmN1L3J0ZV9yY3VfcXNici5oDQo+ID4gPiA+ ICsrKyBiL2xpYi9yY3UvcnRlX3JjdV9xc2JyLmgNCj4gPiA+ID4gQEAgLTc5NCw2ICs3OTQsMTcg QEAgaW50DQo+ID4gPiA+ICAgcnRlX3JjdV9xc2JyX2RxX3JlY2xhaW0oc3RydWN0IHJ0ZV9yY3Vf cXNicl9kcSAqZHEsIHVuc2lnbmVkIGludCBuLA0KPiA+ID4gPiAgICAgICB1bnNpZ25lZCBpbnQg KmZyZWVkLCB1bnNpZ25lZCBpbnQgKnBlbmRpbmcsIHVuc2lnbmVkIGludCAqYXZhaWxhYmxlKTsN Cj4gPiA+ID4gICANCj4gPiA+ID4gKy8qKg0KPiA+ID4gPiArICogUmV0dXJuIHRoZSBudW1iZXIg b2YgZW50cmllcyBpbiBhIGRlZmVyIHF1ZXVlLg0KPiA+ID4gPiArICoNCj4gPiA+ID4gKyAqIEBw YXJhbSBkcQ0KPiA+ID4gPiArICogICBEZWZlciBxdWV1ZS4NCj4gPiA+ID4gKyAqIEByZXR1cm4N Cj4gPiA+ID4gKyAqICAgVGhlIG51bWJlciBvZiBlbnRyaWVzIGluIHRoZSBkZWZlciBxdWV1ZS4N Cj4gPiA+ID4gKyAqLw0KPiA+ID4gPiArdW5zaWduZWQgaW50DQo+ID4gPiA+ICtydGVfcmN1X3Fz YnJfZHFfY291bnQoc3RydWN0IHJ0ZV9yY3VfcXNicl9kcSAqZHEpOw0KPiA+IEFncmVlIG9uIHRo ZSBuZWVkIGZvciB0aGlzIEFQSSBpbiBSQ1UNCj4gPiANCj4gPiA+ID4gKw0KPiA+ID4gPiAgIC8q Kg0KPiA+ID4gPiAgICAqIERlbGV0ZSBhIGRlZmVyIHF1ZXVlLg0KPiA+ID4gPiAgICAqDQo+ID4g PiA+IGRpZmYgLS1naXQgYS9saWIvcmN1L3ZlcnNpb24ubWFwIGIvbGliL3JjdS92ZXJzaW9uLm1h cA0KPiA+ID4gPiBpbmRleCA5ODJmZmQ1OWQ5Li5mNDEwYWI0MWU3IDEwMDY0NA0KPiA+ID4gPiAt LS0gYS9saWIvcmN1L3ZlcnNpb24ubWFwDQo+ID4gPiA+ICsrKyBiL2xpYi9yY3UvdmVyc2lvbi5t YXANCj4gPiA+ID4gQEAgLTUsNiArNSw3IEBAIERQREtfMjQgew0KPiA+ID4gPiAgICAgICBydGVf cmN1X3FzYnJfZHFfY3JlYXRlOw0KPiA+ID4gPiAgICAgICBydGVfcmN1X3FzYnJfZHFfZGVsZXRl Ow0KPiA+ID4gPiAgICAgICBydGVfcmN1X3FzYnJfZHFfZW5xdWV1ZTsNCj4gPiA+ID4gKyAgICAg cnRlX3JjdV9xc2JyX2RxX2NvdW50Ow0KPiA+ID4gPiAgICAgICBydGVfcmN1X3FzYnJfZHFfcmVj bGFpbTsNCj4gPiA+ID4gICAgICAgcnRlX3JjdV9xc2JyX2R1bXA7DQo+ID4gPiA+ICAgICAgIHJ0 ZV9yY3VfcXNicl9nZXRfbWVtc2l6ZTsNCj4gPiA+IA0KPiA+ID4gLS0gDQo+ID4gPiBSZWdhcmRz LA0KPiA+ID4gVmxhZGltaXINCj4gPiA+IA0KPiA+IA0KPiANCg0K