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 1B209A04B5; Wed, 2 Sep 2020 00:01:19 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 5C6B91C0B1; Wed, 2 Sep 2020 00:01:18 +0200 (CEST) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70070.outbound.protection.outlook.com [40.107.7.70]) by dpdk.org (Postfix) with ESMTP id 7A7CE1C0B0 for ; Wed, 2 Sep 2020 00:01:16 +0200 (CEST) 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=REOhiQMNyl0igGly+ypUm5GhUcI6jlkDtyaduqSdpec=; b=oCSM7rdZVAPhrCeZMuzldFxnv71H2wxB/A+RaVS4InJhcQb0B9JNYm4DXMqAgxF6J5b0c2e6+bSACdDtAsUNiL6j5KEYLmS9Puzleh1yugIUJKh675vsCof55ALpE6BypX0qqoLTcx706KKsVqaGQefh3ANOMGrs3C66lWOMTtU= Received: from AM6P194CA0038.EURP194.PROD.OUTLOOK.COM (2603:10a6:209:84::15) by VI1PR08MB4398.eurprd08.prod.outlook.com (2603:10a6:803:102::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3326.21; Tue, 1 Sep 2020 22:01:14 +0000 Received: from AM5EUR03FT055.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:84:cafe::53) by AM6P194CA0038.outlook.office365.com (2603:10a6:209:84::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3348.15 via Frontend Transport; Tue, 1 Sep 2020 22:01:14 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dpdk.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dpdk.org; dmarc=bestguesspass 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; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM5EUR03FT055.mail.protection.outlook.com (10.152.17.214) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3326.19 via Frontend Transport; Tue, 1 Sep 2020 22:01:14 +0000 Received: ("Tessian outbound a0bffebca527:v64"); Tue, 01 Sep 2020 22:01:14 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 54c4324273e18595 X-CR-MTA-TID: 64aa7808 Received: from f2d06e02a1e0.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 1FF36DF9-1808-4F0A-AFA7-F3E9CDB7D2BF.1; Tue, 01 Sep 2020 22:01:08 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f2d06e02a1e0.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 01 Sep 2020 22:01:08 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=h+hhJC57NmiYIWw6Pr7z5XDEgqPTDIKCBtTc4dEyMGU+YYR8q/edhyRons6NaHX/lREg48YSpFAVgY6lFzuFZ/jgsEgRtA7XHO8IJb8dlD71MUVYP9uJEJaXV/hOVwSNt8/2BBkT+2F5429ernOeZND8ubr+uQQ9uyJuASMltbaa+jw6HbmN9OYODrDK4AEiVgf1y8z1JNUUuJlVR+ZGqSi9xu1C4w+F51mpk4XTxLrB8nKZTtoC2IuUxlddfMvvmniCv35Tf93DLeh0NGkuVhtTn5Uy/ttkon942eWSI/cgbi0AK7KLEiida9rU/1C38JIUKo5BQ8i/gIi3t/KU7w== 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=REOhiQMNyl0igGly+ypUm5GhUcI6jlkDtyaduqSdpec=; b=ZejPfNIVa2cnqXjpzfUjNqTs0ojDw0AYynC8fX+WEuhe2dRS1FiMU5taNciFeUlTqJ28mQ1A2E29yfgnYvF7Vznn30AIHQM8++qBamO+DFNLwbFpsZZdMlM65fell9+Lbqs+8sYL6lriNGLq8N703/qvQNNbfnZMejILc93pxSdyzG60a7DBGGdWu6vdmkzF/iTscPRs936uRFCaA11BIrWGwowdsjhDaIrdk2p1G9WsGTAEbH8xrvZTdEljRNvNmgV78yW7aqtylUEvIY+b2hMtih53LlSs7D+b64yTEUTVXkQclPTAjyEp6HI+lgFk8krsrk/bbW6Vx0XcIjUepg== 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=REOhiQMNyl0igGly+ypUm5GhUcI6jlkDtyaduqSdpec=; b=oCSM7rdZVAPhrCeZMuzldFxnv71H2wxB/A+RaVS4InJhcQb0B9JNYm4DXMqAgxF6J5b0c2e6+bSACdDtAsUNiL6j5KEYLmS9Puzleh1yugIUJKh675vsCof55ALpE6BypX0qqoLTcx706KKsVqaGQefh3ANOMGrs3C66lWOMTtU= Received: from VI1PR08MB4622.eurprd08.prod.outlook.com (2603:10a6:803:bc::17) by VE1PR08MB4926.eurprd08.prod.outlook.com (2603:10a6:802:a9::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3283.22; Tue, 1 Sep 2020 22:01:06 +0000 Received: from VI1PR08MB4622.eurprd08.prod.outlook.com ([fe80::80cb:e912:493f:94fa]) by VI1PR08MB4622.eurprd08.prod.outlook.com ([fe80::80cb:e912:493f:94fa%7]) with mapi id 15.20.3326.025; Tue, 1 Sep 2020 22:01:06 +0000 From: Dharmik Thakkar To: "Wang, Yipeng1" CC: "Gobriel, Sameh" , "Richardson, Bruce" , Ray Kinsella , Neil Horman , "dev@dpdk.org" , nd Thread-Topic: [RFC v2] lib/hash: integrate RCU QSBR Thread-Index: AQHWdd4o75YAXmtVhEC1/kBgRDf+V6lSxBMAgAGm94A= Date: Tue, 1 Sep 2020 22:01:06 +0000 Message-ID: <161835A7-9622-4F14-AE00-55C198BEDC30@arm.com> References: <20190901065810.15137-1-dharmik.thakkar@arm.com> <20200819040537.1792-1-dharmik.thakkar@arm.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Authentication-Results-Original: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=arm.com; x-originating-ip: [72.182.82.154] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 15b5dae7-61e5-4166-e942-08d84ec28b73 x-ms-traffictypediagnostic: VE1PR08MB4926:|VI1PR08MB4398: X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: k77YHB89aCecEUMNjxWGnS41IBPM12ZjDmb8lHLCKtJiZdDIU6F69D7131sm81rE/wiBYcANwrBUj+993MwbI7/g9/SiOj3F9qP1J2Tlv61WHhKE0ZJegTc0X+u+lFydJw+6oO0Sy/8oCRtr45P120F3bt/hbhoYeQu5kdVjWoF9Ok/+gPXS/f5kSDeTbPRalz2KJF4haGgMgWKxWf5idDbHIVcr1MnTXwfVT6P+oTj/KWdSBSmOsU6DWXspZZl330oV6lEeJakp/KP0APVx8t08TOpciIP9OCnYSpio9uJ0M0o2HUaFuXRBoADwpApuCOmxKZfgS9EUUyluS84oiK5KLYvI/+IoQIT54WSczNqievPuVErcfHEz6GBi7V5DQSPzP03sV6Wx7HyVzygcrxROgBWb8tIms/zzxK5s0pBM3Wubzcrjfvo5PkZdMZPEPLktI1uEYkB/GYrcp9T6JQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:VI1PR08MB4622.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(376002)(396003)(39860400002)(346002)(66446008)(2616005)(86362001)(6512007)(76116006)(66556008)(64756008)(2906002)(91956017)(66476007)(66946007)(53546011)(6506007)(36756003)(71200400001)(6486002)(8936002)(54906003)(316002)(966005)(478600001)(186003)(33656002)(5660300002)(6916009)(8676002)(4326008)(83380400001)(26005)(21314003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: 4FhJlqK/SirC/LsZOPCcVqGgpla7mBfNOAy3jPT0kFvaCaxn1uHVaJQZC+o2hT5Cf5z9b/RN9woXwXNnuLhlWvZ+DEDxqQEl6w4nR46uw9En8T2OPoPamC9B1nwyRD0vVat2/HkE2AiLx93gPxf7u4sTpOInlkErxsOsqsAGsmwzdC7vdjlgB/YRRNNGXtPJM1tYwp+e4m/EYNhfWUHXjZjqdEcIZxwbbYQ4frDzbuVU8f+a8Fb3Pu/8gVQ0EuiC+23wCW/RTZmsoKhjivW3uw8n7hE5T6gQiVJU/vZBTbS9gqlXC7mtpfOdLSo5LfmRXYbxovkJnhJwn98KY+Oym0ouOiOgSkOhRAyggqMtn+yT6jAP4j1wZsN65KM9+0rxnRQEjUZa9R31SaXWiXdE4vQb3vI3gVlb2W5RGRJjWKkaiMHLijwgPSSfrxy8h070reUrm0YK0LRynxB3fnR5BKtej1ydYcwTs78LmkOvWUhSyjGpytr64RGViApZUGLIqi+LWr2kE8wcDhURSt0ypHLUzoBVnQS5BEpRxHDjqtZnl9CWh10imq/pMpkLv4/Dns2WMEGJD4Q8tM6qwoveYXhlxb9GWLUBJ4aNBVSoG+v9dxpUvsiFtH8rgi3H+M9mWhWts49Kt0wUqAjI1cj8fQ== x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-ID: <9BCB8D9735C0DB4E9C812FA8BACBBEBC@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB4926 Original-Authentication-Results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT055.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: 777740ec-5433-45e3-5ea8-08d84ec28693 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: iz9oSAMVOlEnMv4dkHVCwWnWBDHlW9y02V5gAETxCLYL/JFiDEArjXDQOGoRc33v55khztIlV4S5xN4B82uJyvQExs06dt43Hw4Jr6pGvKyrMLTkGDAR07rBmp/sbkHRZv4Jie365kNbcUjxSFORjse5qo4oG4hZ0moC072RxbjcEDIUyoRg2ylMRlZuSBeWfzAlcNqb9XTXUhinZ3OZ+tZpwKQLPnmrRY0riV5DMTuVkwG1h+Bs8eFDH+VoCo3T+acvWeJUWSQbk6rDgvjzI0dzNnTMNlXTYwsBWOuSS/49LX2OPNCDI4bStxKM4ioDhUy+sdnOCaVg2+iOKdyMPjyIfgEovA1S0Put7VfD3u1yeuaCG/ZvYUZi0QCaxVV0L3U24ZNZYWxOrBpcjvBv18P65Nn/cLh2tuHJJfJ9noVO6pssRWf7vkmAbvH4i9QvFcG8JGmqBU1oMLEf5gM0yMgFrnFZoDwO0vXxHnhzmL8IhAL7CwKLMSikdMQKoTD8 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:(4636009)(39860400002)(136003)(376002)(346002)(396003)(46966005)(316002)(26005)(2906002)(54906003)(356005)(6862004)(82310400003)(478600001)(186003)(6486002)(86362001)(6506007)(36756003)(4326008)(336012)(53546011)(36906005)(8936002)(33656002)(5660300002)(70206006)(2616005)(8676002)(47076004)(70586007)(82740400003)(81166007)(966005)(83380400001)(6512007)(21314003); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2020 22:01:14.2376 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 15b5dae7-61e5-4166-e942-08d84ec28b73 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: AM5EUR03FT055.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB4398 Subject: Re: [dpdk-dev] [RFC v2] lib/hash: integrate RCU QSBR 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" SGkgWWlwZW5nLA0KVGhhbmsgeW91IGZvciB0aGUgY29tbWVudHMhDQoNCj4gT24gQXVnIDMxLCAy MDIwLCBhdCAzOjQ3IFBNLCBXYW5nLCBZaXBlbmcxIDx5aXBlbmcxLndhbmdAaW50ZWwuY29tPiB3 cm90ZToNCj4gDQo+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPj4gRnJvbTogRGhhcm1p ayBUaGFra2FyIDxkaGFybWlrLnRoYWtrYXJAYXJtLmNvbT4NCj4+IFNlbnQ6IFR1ZXNkYXksIEF1 Z3VzdCAxOCwgMjAyMCA5OjA2IFBNDQo+PiBUbzogV2FuZywgWWlwZW5nMSA8eWlwZW5nMS53YW5n QGludGVsLmNvbT47IEdvYnJpZWwsIFNhbWVoDQo+PiA8c2FtZWguZ29icmllbEBpbnRlbC5jb20+ OyBSaWNoYXJkc29uLCBCcnVjZSA8YnJ1Y2UucmljaGFyZHNvbkBpbnRlbC5jb20+Ow0KPj4gUmF5 IEtpbnNlbGxhIDxtZHJAYXNocm9lLmV1PjsgTmVpbCBIb3JtYW4gPG5ob3JtYW5AdHV4ZHJpdmVy LmNvbT4NCj4+IENjOiBkZXZAZHBkay5vcmc7IG5kQGFybS5jb207IERoYXJtaWsgVGhha2thcg0K Pj4gPGRoYXJtaWsudGhha2thckBhcm0uY29tPg0KPj4gU3ViamVjdDogW1JGQyB2Ml0gbGliL2hh c2g6IGludGVncmF0ZSBSQ1UgUVNCUg0KPj4gDQo+PiBJbnRlZ3JhdGUgUkNVIFFTQlIgdG8gbWFr ZSBpdCBlYXNpZXIgZm9yIHRoZSBhcHBsaWNhdGlvbnMgdG8gdXNlIGxvY2sgZnJlZQ0KPj4gYWxn b3JpdGhtLg0KPj4gDQo+PiBSZXNvdXJjZSByZWNsYW1hdGlvbiBpbXBsZW1lbnRhdGlvbiB3YXMg c3BsaXQgZnJvbSB0aGUgb3JpZ2luYWwgc2VyaWVzLCBhbmQNCj4+IGhhcyBhbHJlYWR5IGJlZW4g cGFydCBvZiBSQ1UgbGlicmFyeS4gUmV3b3JrIHRoZSBzZXJpZXMgdG8gYmFzZSBoYXNoDQo+PiBp bnRlZ3JhdGlvbiBvbiBSQ1UgcmVjbGFtYXRpb24gQVBJcy4NCj4+IA0KPj4gUmVmZXIgJ1Jlc291 cmNlIHJlY2xhbWF0aW9uIGZyYW1ld29yayBmb3IgRFBESycgYXZhaWxhYmxlIGF0IFsxXSB0bw0K Pj4gdW5kZXJzdGFuZCB2YXJpb3VzIGFzcGVjdHMgb2YgaW50ZWdyYXRpbmcgUkNVIGxpYnJhcnkg aW50byBvdGhlciBsaWJyYXJpZXMuDQo+PiANCj4+IFsxXSBodHRwczovL2RvYy5kcGRrLm9yZy9n dWlkZXMvcHJvZ19ndWlkZS9yY3VfbGliLmh0bWwNCj4+IA0KPj4gSW50cm9kdWNlIGEgbmV3IEFQ SSBydGVfaGFzaF9yY3VfcXNicl9hZGQgZm9yIGFwcGxpY2F0aW9uIHRvIHJlZ2lzdGVyIGEgUkNV DQo+PiB2YXJpYWJsZSB0aGF0IGhhc2ggbGlicmFyeSB3aWxsIHVzZS4NCj4+IA0KPj4gU3VnZ2Vz dGVkLWJ5OiBIb25uYXBwYSBOYWdhcmFoYWxsaSA8aG9ubmFwcGEubmFnYXJhaGFsbGlAYXJtLmNv bT4NCj4+IFNpZ25lZC1vZmYtYnk6IERoYXJtaWsgVGhha2thciA8ZGhhcm1pay50aGFra2FyQGFy bS5jb20+DQo+PiBSZXZpZXdlZC1ieTogUnVpZmVuZyBXYW5nIDxydWlmZW5nLndhbmdAYXJtLmNv bT4NCj4+IC0tLQ0KPj4gdjI6DQo+PiAtIFJlbW92ZSBkZWZlciBxdWV1ZSByZWxhdGVkIGZ1bmN0 aW9ucyBhbmQgdXNlIHJlc291cmNlIHJlY2xhbWF0aW9uDQo+PiAgIEFQSXMgZnJvbSB0aGUgUkNV IFFTQlIgbGlicmFyeSBpbnN0ZWFkDQo+PiANCj4+IC0gUmVtb3ZlIHBhdGNoIChuZXQvaXhnYmU6 IGF2b2lkIG11bHRwaWxlIGRlZmluaXRpb25zIG9mICdib29sJykNCj4+ICAgZnJvbSB0aGUgc2Vy aWVzIGFzIGl0IGlzIGFscmVhZHkgYWNjZXB0ZWQNCj4+IA0KPj4gLS0tDQo+PiBsaWIvTWFrZWZp bGUgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0NCj4+IGxpYi9saWJydGVfaGFzaC9N YWtlZmlsZSAgICAgICAgICAgICB8ICAgMiArLQ0KPj4gbGliL2xpYnJ0ZV9oYXNoL21lc29uLmJ1 aWxkICAgICAgICAgIHwgICAxICsNCj4+IGxpYi9saWJydGVfaGFzaC9ydGVfY3Vja29vX2hhc2gu YyAgICB8IDI5MSArKysrKysrKysrKysrKysrKysrKystLS0tLS0NCj4+IGxpYi9saWJydGVfaGFz aC9ydGVfY3Vja29vX2hhc2guaCAgICB8ICAgOCArDQo+PiBsaWIvbGlicnRlX2hhc2gvcnRlX2hh c2guaCAgICAgICAgICAgfCAgNzUgKysrKysrLQ0KPj4gbGliL2xpYnJ0ZV9oYXNoL3J0ZV9oYXNo X3ZlcnNpb24ubWFwIHwgICAyICstDQo+PiA3IGZpbGVzIGNoYW5nZWQsIDMwOCBpbnNlcnRpb25z KCspLCA3MyBkZWxldGlvbnMoLSkNCj4+IA0KPiANCj4gPC4uLi4uLj4NCj4gDQo+IA0KPj4gKy8q KiBIQVNIIFJDVSBRU0JSIGNvbmZpZ3VyYXRpb24gc3RydWN0dXJlLiAqLyBzdHJ1Y3QNCj4+ICty dGVfaGFzaF9yY3VfY29uZmlnIHsNCj4+ICsJc3RydWN0IHJ0ZV9yY3VfcXNiciAqdjsJCS8qKjwg UkNVIFFTQlIgdmFyaWFibGUuICovDQo+PiArCWVudW0gcnRlX2hhc2hfcXNicl9tb2RlIG1vZGU7 DQo+PiArCS8qKjwgTW9kZSBvZiBSQ1UgUVNCUi4gUlRFX0hBU0hfUVNCUl9NT0RFX3h4eA0KPj4g KwkgKiAnMCcgZm9yIGRlZmF1bHQ6IGNyZWF0ZSBkZWZlciBxdWV1ZSBmb3IgcmVjbGFpbS4NCj4+ ICsJICovDQo+PiArCXVpbnQzMl90IGRxX3NpemU7DQo+PiArCS8qKjwgUkNVIGRlZmVyIHF1ZXVl IHNpemUuDQo+PiArCSAqIGRlZmF1bHQ6IHRvdGFsIGhhc2ggdGFibGUgZW50cmllcy4NCj4+ICsJ ICovDQo+PiArCXVpbnQzMl90IHJlY2xhaW1fdGhkOwkvKio8IFRocmVzaG9sZCB0byB0cmlnZ2Vy IGF1dG8gcmVjbGFpbS4gKi8NCj4+ICsJdWludDMyX3QgcmVjbGFpbV9tYXg7DQo+PiArCS8qKjwg TWF4IGVudHJpZXMgdG8gcmVjbGFpbSBpbiBvbmUgZ28uDQo+PiArCSAqIGRlZmF1bHQ6IFJURV9I QVNIX1JDVV9EUV9SRUNMQUlNX01BWC4NCj4+ICsJICovDQo+PiArCXZvaWQgKmtleV9kYXRhX3B0 cjsNCj4+ICsJLyoqPCBQb2ludGVyIHBhc3NlZCB0byB0aGUgZnJlZSBmdW5jdGlvbi4gVHlwaWNh bGx5LCB0aGlzIGlzIHRoZQ0KPj4gKwkgKiBwb2ludGVyIHRvIHRoZSBkYXRhIHN0cnVjdHVyZSB0 byB3aGljaCB0aGUgcmVzb3VyY2UgdG8gZnJlZQ0KPj4gKwkgKiAoa2V5LWRhdGEpIGJlbG9uZ3Mu IFRoaXMgY2FuIGJlIE5VTEwuDQo+PiArCSAqLw0KPj4gKwlydGVfaGFzaF9mcmVlX2tleV9kYXRh IGZyZWVfa2V5X2RhdGFfZnVuYzsNCj4+ICsJLyoqPCBGdW5jdGlvbiB0byBjYWxsIHRvIGZyZWUg dGhlIHJlc291cmNlIChrZXktZGF0YSkuICovIH07DQo+PiArDQo+IFtXYW5nLCBZaXBlbmddIA0K PiBJIGd1ZXNzIHRoaXMgaXMgbW9zdGx5IGEgd3JhcHBlciBvZiBydGVfcmN1X3FzYnJfZHFfcGFy YW1ldGVycy4NCj4gUGVyc29uYWxseSwgSSBpbmNsaW5lIHRvIHVzZSB2YXJpYWJsZSBuYW1lcyB0 aGF0IG1hdGNoIHRoZSBleGlzdGluZyBxc2JyIHBhcmFtZXRlcnMgYmV0dGVyLg0KPiBGb3IgZXhh bXBsZSwgeW91IGNvdWxkIHN0aWxsIGNhbGwgcmVjbGFpbV90aGQgYXMgcmVjbGFpbV9saW1pdC4g QW5kIF9tYXggdG8gYmUgX3NpemUuDQo+IFRodXMsIHBlb3BsZSB3aG8gYXJlIGFscmVhZHkgZmFt aWxpYXIgd2l0aCBxc2JyIGNhbiBtYXRjaCB0aGUgbWVhbmluZ3MgYmV0dGVyLg0KPiANCg0KTWFr ZXMgc2Vuc2UuIEkgd2lsbCB1cGRhdGUgaXQuDQoNCj4gDQo+PiAvKiogQGludGVybmFsIEEgaGFz aCB0YWJsZSBzdHJ1Y3R1cmUuICovICBzdHJ1Y3QgcnRlX2hhc2g7DQo+PiANCj4+IEBAIC0yODcs NyArMzI5LDggQEAgcnRlX2hhc2hfYWRkX2tleV93aXRoX2hhc2goY29uc3Qgc3RydWN0IHJ0ZV9o YXNoICpoLA0KPj4gY29uc3Qgdm9pZCAqa2V5LCBoYXNoX3NpZ190DQo+PiAgKiBUaHJlYWQgc2Fm ZXR5IGNhbiBiZSBlbmFibGVkIGJ5IHNldHRpbmcgZmxhZyBkdXJpbmcNCj4+ICAqIHRhYmxlIGNy ZWF0aW9uLg0KPj4gICogSWYgUlRFX0hBU0hfRVhUUkFfRkxBR1NfTk9fRlJFRV9PTl9ERUwgb3IN Cj4+IC0gKiBSVEVfSEFTSF9FWFRSQV9GTEFHU19SV19DT05DVVJSRU5DWV9MRiBpcyBlbmFibGVk LA0KPj4gKyAqIFJURV9IQVNIX0VYVFJBX0ZMQUdTX1JXX0NPTkNVUlJFTkNZX0xGIGlzIGVuYWJs ZWQgYW5kDQo+PiArICogaW50ZXJuYWwgUkNVIGlzIE5PVCBlbmFibGVkLA0KPj4gICogdGhlIGtl eSBpbmRleCByZXR1cm5lZCBieSBydGVfaGFzaF9hZGRfa2V5X3h4eCBBUElzIHdpbGwgbm90IGJl DQo+PiAgKiBmcmVlZCBieSB0aGlzIEFQSS4gcnRlX2hhc2hfZnJlZV9rZXlfd2l0aF9wb3NpdGlv biBBUEkgbXVzdCBiZSBjYWxsZWQNCj4+ICAqIGFkZGl0aW9uYWxseSB0byBmcmVlIHRoZSBpbmRl eCBhc3NvY2lhdGVkIHdpdGggdGhlIGtleS4NCj4+IEBAIC0zMTYsNyArMzU5LDggQEAgcnRlX2hh c2hfZGVsX2tleShjb25zdCBzdHJ1Y3QgcnRlX2hhc2ggKmgsIGNvbnN0IHZvaWQNCj4+ICprZXkp Ow0KPj4gICogVGhyZWFkIHNhZmV0eSBjYW4gYmUgZW5hYmxlZCBieSBzZXR0aW5nIGZsYWcgZHVy aW5nDQo+PiAgKiB0YWJsZSBjcmVhdGlvbi4NCj4+ICAqIElmIFJURV9IQVNIX0VYVFJBX0ZMQUdT X05PX0ZSRUVfT05fREVMIG9yDQo+PiAtICogUlRFX0hBU0hfRVhUUkFfRkxBR1NfUldfQ09OQ1VS UkVOQ1lfTEYgaXMgZW5hYmxlZCwNCj4+ICsgKiBSVEVfSEFTSF9FWFRSQV9GTEFHU19SV19DT05D VVJSRU5DWV9MRiBpcyBlbmFibGVkIGFuZA0KPj4gKyAqIGludGVybmFsIFJDVSBpcyBOT1QgZW5h YmxlZCwNCj4+ICAqIHRoZSBrZXkgaW5kZXggcmV0dXJuZWQgYnkgcnRlX2hhc2hfYWRkX2tleV94 eHggQVBJcyB3aWxsIG5vdCBiZQ0KPj4gICogZnJlZWQgYnkgdGhpcyBBUEkuIHJ0ZV9oYXNoX2Zy ZWVfa2V5X3dpdGhfcG9zaXRpb24gQVBJIG11c3QgYmUgY2FsbGVkDQo+PiAgKiBhZGRpdGlvbmFs bHkgdG8gZnJlZSB0aGUgaW5kZXggYXNzb2NpYXRlZCB3aXRoIHRoZSBrZXkuDQo+PiBAQCAtMzcw LDcgKzQxNCw4IEBAIHJ0ZV9oYXNoX2dldF9rZXlfd2l0aF9wb3NpdGlvbihjb25zdCBzdHJ1Y3Qg cnRlX2hhc2gNCj4+ICpoLCBjb25zdCBpbnQzMl90IHBvc2l0aW9uLA0KPj4gICogb25seSBiZSBj YWxsZWQgZnJvbSBvbmUgdGhyZWFkIGJ5IGRlZmF1bHQuIFRocmVhZCBzYWZldHkNCj4+ICAqIGNh biBiZSBlbmFibGVkIGJ5IHNldHRpbmcgZmxhZyBkdXJpbmcgdGFibGUgY3JlYXRpb24uDQo+PiAg KiBJZiBSVEVfSEFTSF9FWFRSQV9GTEFHU19OT19GUkVFX09OX0RFTCBvcg0KPj4gLSAqIFJURV9I QVNIX0VYVFJBX0ZMQUdTX1JXX0NPTkNVUlJFTkNZX0xGIGlzIGVuYWJsZWQsDQo+PiArICogUlRF X0hBU0hfRVhUUkFfRkxBR1NfUldfQ09OQ1VSUkVOQ1lfTEYgaXMgZW5hYmxlZCBhbmQNCj4+ICsg KiBpbnRlcm5hbCBSQ1UgaXMgTk9UIGVuYWJsZWQsDQo+PiAgKiB0aGUga2V5IGluZGV4IHJldHVy bmVkIGJ5IHJ0ZV9oYXNoX2RlbF9rZXlfeHh4IEFQSXMgbXVzdCBiZSBmcmVlZA0KPj4gICogdXNp bmcgdGhpcyBBUEkuIFRoaXMgQVBJIHNob3VsZCBiZSBjYWxsZWQgYWZ0ZXIgYWxsIHRoZSByZWFk ZXJzDQo+PiAgKiBoYXZlIHN0b3BwZWQgcmVmZXJlbmNpbmcgdGhlIGVudHJ5IGNvcnJlc3BvbmRp bmcgdG8gdGhpcyBrZXkuDQo+PiBAQCAtNjI1LDYgKzY3MCwyOCBAQCBydGVfaGFzaF9sb29rdXBf YnVsayhjb25zdCBzdHJ1Y3QgcnRlX2hhc2ggKmgsIGNvbnN0DQo+PiB2b2lkICoqa2V5cywNCj4+ ICAqLw0KPj4gaW50MzJfdA0KPj4gcnRlX2hhc2hfaXRlcmF0ZShjb25zdCBzdHJ1Y3QgcnRlX2hh c2ggKmgsIGNvbnN0IHZvaWQgKiprZXksIHZvaWQgKipkYXRhLA0KPj4gdWludDMyX3QgKm5leHQp Ow0KPj4gKw0KPj4gKy8qKg0KPj4gKyAqIEB3YXJuaW5nDQo+PiArICogQGIgRVhQRVJJTUVOVEFM OiB0aGlzIEFQSSBtYXkgY2hhbmdlIHdpdGhvdXQgcHJpb3Igbm90aWNlDQo+PiArICoNCj4+ICsg KiBBc3NvY2lhdGUgUkNVIFFTQlIgdmFyaWFibGUgd2l0aCBhbiBIYXNoIG9iamVjdC4NCj4gW1dh bmcsIFlpcGVuZ10gVG8gZW5hYmxlIFJDVSB3ZSBuZWVkIHRvIGNhbGwgdGhpcyBmdW5jLg0KPiBJ IHRoaW5rIHlvdSBjYW4gYmUgbW9yZSBleHBsaWNpdCwgZS5nLiAiVGhpcyBBUEkgc2hvdWxkIGJl IGNhbGxlZCB0byBlbmFibGUgdGhlIFJDVSBzdXBwb3J0Ig0KPiANCg0KWWVzLg0KDQo+PiArICoN Cj4+ICsgKiBAcGFyYW0gaA0KPj4gKyAqICAgdGhlIGhhc2ggb2JqZWN0IHRvIGFkZCBSQ1UgUVNC Ug0KPj4gKyAqIEBwYXJhbSBjZmcNCj4+ICsgKiAgIFJDVSBRU0JSIGNvbmZpZ3VyYXRpb24NCj4+ ICsgKiBAcmV0dXJuDQo+PiArICogICBPbiBzdWNjZXNzIC0gMA0KPj4gKyAqICAgT24gZXJyb3Ig LSAxIHdpdGggZXJyb3IgY29kZSBzZXQgaW4gcnRlX2Vycm5vLg0KPj4gKyAqICAgUG9zc2libGUg cnRlX2Vycm5vIGNvZGVzIGFyZToNCj4+ICsgKiAgIC0gRUlOVkFMIC0gaW52YWxpZCBwb2ludGVy DQo+PiArICogICAtIEVFWElTVCAtIGFscmVhZHkgYWRkZWQgUVNCUg0KPj4gKyAqICAgLSBFTk9N RU0gLSBtZW1vcnkgYWxsb2NhdGlvbiBmYWlsdXJlDQo+PiArICovDQo+IFtXYW5nLCBZaXBlbmdd IElzIHRoZXJlIGFueSBmdXJ0aGVyIHJlcXVpcmVtZW50IGZvciB3aGVuIHRvIGNhbGwgdGhpcyBB UEk/IA0KPiBFLmcuIHlvdSBjb3VsZCBzYXkgInRoaXMgQVBJIHNob3VsZCBiZSBjYWxsZWQgaW1t ZWRpYXRlbHkgYWZ0ZXIgcnRlX2hhc2hfY3JlYXRlKCkiDQo+IA0KDQpTdXJlLCBJIHdpbGwgYWRk IGZ1cnRoZXIgZ3VpZGVsaW5lcy9yZXF1aXJlbWVudHMuDQoNCj4+ICtfX3J0ZV9leHBlcmltZW50 YWwNCj4+ICtpbnQgcnRlX2hhc2hfcmN1X3FzYnJfYWRkKHN0cnVjdCBydGVfaGFzaCAqaCwNCj4+ ICsJCQkJc3RydWN0IHJ0ZV9oYXNoX3JjdV9jb25maWcgKmNmZyk7DQo+PiAjaWZkZWYgX19jcGx1 c3BsdXMNCj4+IH0NCj4+ICNlbmRpZg0KPj4gZGlmZiAtLWdpdCBhL2xpYi9saWJydGVfaGFzaC9y dGVfaGFzaF92ZXJzaW9uLm1hcA0KPj4gYi9saWIvbGlicnRlX2hhc2gvcnRlX2hhc2hfdmVyc2lv bi5tYXANCj4+IGluZGV4IGMwZGI4MTAxNGZmOS4uYzZkNzMwODBmNDc4IDEwMDY0NA0KPj4gLS0t IGEvbGliL2xpYnJ0ZV9oYXNoL3J0ZV9oYXNoX3ZlcnNpb24ubWFwDQo+PiArKysgYi9saWIvbGli cnRlX2hhc2gvcnRlX2hhc2hfdmVyc2lvbi5tYXANCj4+IEBAIC0zNiw1ICszNiw1IEBAIEVYUEVS SU1FTlRBTCB7DQo+PiAJcnRlX2hhc2hfbG9va3VwX3dpdGhfaGFzaF9idWxrOw0KPj4gCXJ0ZV9o YXNoX2xvb2t1cF93aXRoX2hhc2hfYnVsa19kYXRhOw0KPj4gCXJ0ZV9oYXNoX21heF9rZXlfaWQ7 DQo+PiAtDQo+PiArCXJ0ZV9oYXNoX3JjdV9xc2JyX2FkZDsNCj4+IH07DQo+PiAtLQ0KPj4gMi4x Ny4xDQo+IFtXYW5nLCBZaXBlbmddIA0KPiBIaSwgRGhhcm1paywNCj4gVGhhbmtzIGZvciB0aGUg cGF0Y2guIEl0IGdlbmVyYWxseSBsb29rcyBnb29kIHRvIG1lLiANCg0KVGhhdOKAmXMgZ3JlYXQu IEkgd2lsbCBjb252ZXJ0IGl0IHRvIGEgcGF0Y2guDQoNCj4gSSBndWVzcyB5b3Ugd2lsbCByZXZp c2UgZG9jdW1lbnRhdGlvbiBhbmQgdGhlIHVuaXQgdGVzdCBhcyB3ZWxsIGFmdGVyIHRoZSBSRkMu DQo+IFRoYXQgaXMgaGVscGZ1bCBmb3IgdXNlcnMgdG8gdW5kZXJzdGFuZCBob3cgdG8gdXNlIGhh c2ggYXBwcm9wcmlhdGVseSB3aXRoIHRoZSBSQ1UgbGliLg0KDQpZZXMsIEkgd2lsbCBhZGQgdGhl IGRvY3VtZW50YXRpb24gYW5kIHVuaXQgdGVzdCBwYXRjaGVzLg0K