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 CCA444280A; Wed, 22 Mar 2023 15:43:36 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id BA5A642B8C; Wed, 22 Mar 2023 15:43:36 +0100 (CET) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2087.outbound.protection.outlook.com [40.107.20.87]) by mails.dpdk.org (Postfix) with ESMTP id 1EBD440A84; Wed, 22 Mar 2023 15:43:35 +0100 (CET) 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=wyr9O2lLipzjI85KTSndkOmZ1AnBUuOt8u/yiWJLzIY=; b=iNx6xirlIB/Mpj8GqcHFc4NMwbY6zcRBvAMWn3ZDFIkUkvExbGFlYE9ytxzSTle7k4pF5OCFEuPMH6dH0JRVwtlzXF/CdCcjAqLYurU8HgWFpbNj70k10PyY/2j/njfq6IkDj6zzTb4wdxCcdAqSDv526U7+1BIdfi7CUgiI/8M= Received: from AS8PR04CA0201.eurprd04.prod.outlook.com (2603:10a6:20b:2f3::26) by AM8PR08MB6371.eurprd08.prod.outlook.com (2603:10a6:20b:363::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.37; Wed, 22 Mar 2023 14:43:33 +0000 Received: from AM7EUR03FT026.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:2f3:cafe::81) by AS8PR04CA0201.outlook.office365.com (2603:10a6:20b:2f3::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.37 via Frontend Transport; Wed, 22 Mar 2023 14:43:33 +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 AM7EUR03FT026.mail.protection.outlook.com (100.127.140.154) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6222.17 via Frontend Transport; Wed, 22 Mar 2023 14:43:32 +0000 Received: ("Tessian outbound 0df938784972:v135"); Wed, 22 Mar 2023 14:43:32 +0000 X-CR-MTA-TID: 64aa7808 Received: from e7872a9a220d.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 9453F413-760A-4263-AEDA-D3E7086B03B0.1; Wed, 22 Mar 2023 14:43:26 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e7872a9a220d.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 22 Mar 2023 14:43:26 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JZ/Tj+0oyeN1hgfwvI1zz7MoY/sAyLVUCGcxMn38gijnx705A74lMazWN+fnK5O06iGiW8/kF7qzpUcqAqZTolxZgH/WqksyCgqoIKIz+56LL4h4RhcupbPJ33hloKxs100d7EfMCOIqlQiMFci0Ry4y0izzgk0/Iir7+kjEGVkhqLKFjIr1N+5qx06zoCR0K3TsDHr1GjBYtV+Wlt9ZWtjVuLp82zIRiIMqykbsIkanMbThKuC7KJKEzFmaUPvr0USm18x/THQMmoM6e6iGWUVfqi4KwR0BpIEwp1aPFQg6F2OWzDyw2/ijpBl4LwSIEk/tUOA/FldWPYpw4i3sUA== 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=wyr9O2lLipzjI85KTSndkOmZ1AnBUuOt8u/yiWJLzIY=; b=gg9yhdtl1h9rHalWOJI0NqVBv7+bMso17auG+xVmu+6Yi56ESTJyHuJb3StDfioB1w/7ORonn2n6/6uHiHmF266aALA96pj+celF/7L/vlQbhhO8gLUeGoANF9Uxtxk3aQ74PEGocBq0Qp3EFmbVlOy+Z9PD1gvL1Kwc3vMaKtxyVav9Xs+ZXZPQFO1GlvCDxSMDREbzPV/uzLMLg9nL89kgVGX2At7BQ4ZUm/7GJwXPfRCi+DHjVaOqBRfnCRIZ0h3n6kmbrkoiuqL2ZTwJ/GwWUvKmZHR3+tjCwMtqIhJ76BDbqbM+92AA5MmTYI/rh3noUmmZna3LurJFHDQIkQ== 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=wyr9O2lLipzjI85KTSndkOmZ1AnBUuOt8u/yiWJLzIY=; b=iNx6xirlIB/Mpj8GqcHFc4NMwbY6zcRBvAMWn3ZDFIkUkvExbGFlYE9ytxzSTle7k4pF5OCFEuPMH6dH0JRVwtlzXF/CdCcjAqLYurU8HgWFpbNj70k10PyY/2j/njfq6IkDj6zzTb4wdxCcdAqSDv526U7+1BIdfi7CUgiI/8M= Received: from DBAPR08MB5814.eurprd08.prod.outlook.com (2603:10a6:10:1b1::6) by AS2PR08MB8286.eurprd08.prod.outlook.com (2603:10a6:20b:555::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.37; Wed, 22 Mar 2023 14:43:24 +0000 Received: from DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::910e:e35f:b1eb:ae9]) by DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::910e:e35f:b1eb:ae9%5]) with mapi id 15.20.6178.037; Wed, 22 Mar 2023 14:43:24 +0000 From: Honnappa Nagarahalli To: Ferruh Yigit , =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= , Feifei Wang , "thomas@monjalon.net" , Andrew Rybchenko , "techboard@dpdk.org" CC: "dev@dpdk.org" , "konstantin.v.ananyev@yandex.ru" , nd , Ruifeng Wang , nd Subject: RE: [PATCH v3 1/3] ethdev: enable direct rearm with separate API Thread-Topic: [PATCH v3 1/3] ethdev: enable direct rearm with separate API Thread-Index: AQHZUCosX3qGVmm4MEGej+UjRtoaAa7tvicAgAAa9wCAAPQukIAA/KcAgBcd/KA= Date: Wed, 22 Mar 2023 14:43:23 +0000 Message-ID: References: <20220420081650.2043183-1-feifei.wang2@arm.com> <20230104073043.1120168-1-feifei.wang2@arm.com> <20230104073043.1120168-2-feifei.wang2@arm.com> <98CBD80474FA8B44BF855DF32C47DC35D8761D@smartserver.smartshare.dk> <98CBD80474FA8B44BF855DF32C47DC35D877B7@smartserver.smartshare.dk> <47f02b76-d96e-dfb1-b689-53738dfedb0d@amd.com> In-Reply-To: <47f02b76-d96e-dfb1-b689-53738dfedb0d@amd.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: D902A1498B441B4CB9FEEDD85E4C1E93.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: DBAPR08MB5814:EE_|AS2PR08MB8286:EE_|AM7EUR03FT026:EE_|AM8PR08MB6371:EE_ X-MS-Office365-Filtering-Correlation-Id: c83014ff-3d2a-4de1-6d90-08db2ae3cf4b 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: sEi0NAxgEkPF2Mwsd6o8Zd9mfKxQu+IF2Q4+Jp9C9a8G7u92knF6Wd12axyuNWGgE0Cu1n1fQwLxOfDtljYO9fXQCJNz9HdOWm5+AachV0BrXaMBECDp0qdVF38bAfRSdxk12qfuGQFbzLpmp8otH64A8wow6yMvPP6T/qG3VVWqyoRh+xGSmPWP1nAgaJwdwWfS5AF+G1OFh5OkznwScKFReUU6rm7YDYHIuJ2YWoWWhVO5SRLZ6Lbbqqw/RAZORffS9hJpAUIZfGvSNvO+zLaaq7GVR8rey26KGZs3zrjRSPOd+wrhkOfJVznuOk0RfwegMw58dLP3bduCxXPCLndxY3IeN781In2MScQmsWBQ82sYlNWWBygml7e2RuZTZNHrgYvuyP7O7TKHrClnoTjFtNs1XDo0ekJkEu0AXltqCxa6Wh705x3vJoCHHG0rMuwz2sUtzqMDLb3pdngmmzUGoboo2a4tnJU8s/C9AxGq4TiUcuLFkAlxqz7sllhPHFkqsFx/P/qvpBmh/Anv7Q34fP1Kl8g0xQMPox5gTspVhKdK8H5RqBBERgrgzLu+iDzVovbZXqsSTXLvpzt827K4UO0sSTyeqQ38V5+AxegLOtq/80KTiP9T1WTgdKZfEIoFRBIzTtHs9WAqEM775drtSsNpFGvkBSEbg0sWkbl7JttSyKq7vcesZ8TkNRoGqGxkl6a70OQBZRVJsnFe+e5NaXL9hvQw+xXx/zQ2twI= 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:(13230025)(4636009)(396003)(136003)(39860400002)(346002)(366004)(376002)(451199018)(66574015)(7696005)(186003)(9686003)(478600001)(83380400001)(53546011)(6506007)(110136005)(54906003)(316002)(66446008)(71200400001)(66476007)(66946007)(66556008)(76116006)(8676002)(64756008)(4326008)(8936002)(41300700001)(52536014)(5660300002)(122000001)(38100700002)(2906002)(55016003)(38070700005)(86362001)(33656002)(23180200003); DIR:OUT; SFP:1101; Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8286 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: AM7EUR03FT026.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: dadb271b-bcb9-4c13-5b3a-08db2ae3ca14 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: C4kcUxFuy73pjgBkRH1ETK6QgXZvrw+HYIw4aXurrsqiI5WItbDyVBIFfqUKy/EhR6h989qH62mKazG0jhf5cdkQkYA7Ydf/3ZrDFL1pAf2tyaXbe427EKxS+FNfgEGBODL8Mah60H5H8Dc0r1UxdfoBd9FzvubZoC2flQ8YQtgu9hlTQpIF/AfpU/16FBuwSrmI4/aoVv5kUE63uXZ7v7zmN75LblIMZjI9d4RKU29iF+4ZZJa/Vk8IoFZySHbQG1mEmQISWjwFs0w8BKIT1MilOJOlefKY3jWg15jG6mUBzOUAfRKSuv+9Ju1KegGuLxAc9x+fPFg0RIG2SmpQcPoQxCTjYvvyIwpICdN6Y+6812xqJlnzR3qdlNQqWUvws2M6+CZ2OMcUnXEVI0YDMWqfhjqkAWry8kDAY1Ou3iS/WF+5ouInjzB5JkZNvqX+y6oPRJvGBeXn3uL2LF11Z/GX05sakvPGSN2FXSC0yqZ4lWjOE618S0oKtMPVIKKpdIesmH6jLsxDatkPyIyJ3SVjK2MEg89U9R33+Kb/GYIon1ZNUbJ6S2WDDvhiimE2WrjndwciJTU32kefu1xSYsZ3AIBY4/GMYHT35R8SWw5plborn9U4TVA47pVivF2MC0wE31KEkJHSCHSNcFQ+kFaZn9BvWzgn0lT4uxhI6+bFIyngJU8x+8Pz1LV1wTGQnlp2DhBB+Pt8/aSYCAQDxijHKkfBTRVKX/i80b75jBY= 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:(13230025)(4636009)(346002)(39860400002)(376002)(136003)(396003)(451199018)(40470700004)(36840700001)(46966006)(7696005)(66574015)(6506007)(9686003)(186003)(47076005)(4326008)(478600001)(83380400001)(336012)(53546011)(316002)(110136005)(54906003)(70586007)(70206006)(8676002)(450100002)(26005)(81166007)(36860700001)(8936002)(52536014)(5660300002)(41300700001)(82740400003)(2906002)(40460700003)(55016003)(356005)(82310400005)(86362001)(33656002)(40480700001)(23180200003); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Mar 2023 14:43:32.5733 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c83014ff-3d2a-4de1-6d90-08db2ae3cf4b 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: AM7EUR03FT026.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6371 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 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogRmVycnVoIFlpZ2l0IDxm ZXJydWgueWlnaXRAYW1kLmNvbT4NCj4gU2VudDogVHVlc2RheSwgTWFyY2ggNywgMjAyMyAyOjQx IFBNDQo+IFRvOiBIb25uYXBwYSBOYWdhcmFoYWxsaSA8SG9ubmFwcGEuTmFnYXJhaGFsbGlAYXJt LmNvbT47IE1vcnRlbiBCcsO4cnVwDQo+IDxtYkBzbWFydHNoYXJlc3lzdGVtcy5jb20+OyBGZWlm ZWkgV2FuZyA8RmVpZmVpLldhbmcyQGFybS5jb20+Ow0KPiB0aG9tYXNAbW9uamFsb24ubmV0OyBB bmRyZXcgUnliY2hlbmtvDQo+IDxhbmRyZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydT47IHRlY2hi b2FyZEBkcGRrLm9yZw0KPiBDYzogZGV2QGRwZGsub3JnOyBrb25zdGFudGluLnYuYW5hbnlldkB5 YW5kZXgucnU7IG5kIDxuZEBhcm0uY29tPjsNCj4gUnVpZmVuZyBXYW5nIDxSdWlmZW5nLldhbmdA YXJtLmNvbT4NCj4gU3ViamVjdDogUmU6IFtQQVRDSCB2MyAxLzNdIGV0aGRldjogZW5hYmxlIGRp cmVjdCByZWFybSB3aXRoIHNlcGFyYXRlIEFQSQ0KPiANCj4gT24gMy83LzIwMjMgNjoxMiBBTSwg SG9ubmFwcGEgTmFnYXJhaGFsbGkgd3JvdGU6DQo+ID4gPHNuaXA+DQo+ID4NCj4gPj4NCj4gPj4g T24gMy82LzIwMjMgMToyNiBQTSwgTW9ydGVuIEJyw7hydXAgd3JvdGU6DQo+ID4+Pj4gRnJvbTog RmVycnVoIFlpZ2l0IFttYWlsdG86ZmVycnVoLnlpZ2l0QGFtZC5jb21dDQo+ID4+Pj4gU2VudDog TW9uZGF5LCA2IE1hcmNoIDIwMjMgMTMuNDkNCj4gPj4+Pg0KPiA+Pj4+IE9uIDEvNC8yMDIzIDg6 MjEgQU0sIE1vcnRlbiBCcsO4cnVwIHdyb3RlOg0KPiA+Pj4+Pj4gRnJvbTogRmVpZmVpIFdhbmcg W21haWx0bzpmZWlmZWkud2FuZzJAYXJtLmNvbV0NCj4gPj4+Pj4+IFNlbnQ6IFdlZG5lc2RheSwg NCBKYW51YXJ5IDIwMjMgMDguMzENCj4gPj4+Pj4+DQo+ID4+Pj4+PiBBZGQgJ3R4X2ZpbGxfc3df cmluZycgYW5kICdyeF9mbHVzaF9kZXNjcmlwdG9yJyBBUEkgaW50byBkaXJlY3QNCj4gPj4+Pj4+ IHJlYXJtIG1vZGUgZm9yIHNlcGFyYXRlIFJ4IGFuZCBUeCBPcGVyYXRpb24uIEFuZCB0aGlzIGNh biBzdXBwb3J0DQo+ID4+Pj4+PiBkaWZmZXJlbnQgbXVsdGlwbGUgc291cmNlcyBpbiBkaXJlY3Qg cmVhcm0gbW9kZS4gRm9yIGV4YW1wbGVzLCBSeA0KPiA+Pj4+Pj4gZHJpdmVyIGlzIGl4Z2JlLCBh bmQgVHggZHJpdmVyIGlzIGk0MGUuDQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4gU3VnZ2VzdGVkLWJ5OiBI b25uYXBwYSBOYWdhcmFoYWxsaQ0KPiA8aG9ubmFwcGEubmFnYXJhaGFsbGlAYXJtLmNvbT4NCj4g Pj4+Pj4+IFN1Z2dlc3RlZC1ieTogUnVpZmVuZyBXYW5nIDxydWlmZW5nLndhbmdAYXJtLmNvbT4N Cj4gPj4+Pj4+IFNpZ25lZC1vZmYtYnk6IEZlaWZlaSBXYW5nIDxmZWlmZWkud2FuZzJAYXJtLmNv bT4NCj4gPj4+Pj4+IFJldmlld2VkLWJ5OiBSdWlmZW5nIFdhbmcgPHJ1aWZlbmcud2FuZ0Bhcm0u Y29tPg0KPiA+Pj4+Pj4gUmV2aWV3ZWQtYnk6IEhvbm5hcHBhIE5hZ2FyYWhhbGxpDQo+IDxob25u YXBwYS5uYWdhcmFoYWxsaUBhcm0uY29tPg0KPiA+Pj4+Pj4gLS0tDQo+ID4+Pj4+DQo+ID4+Pj4+ IFRoaXMgZmVhdHVyZSBsb29rcyB2ZXJ5IHByb21pc2luZyBmb3IgcGVyZm9ybWFuY2UuIEkgYW0g cGxlYXNlZCB0bw0KPiA+Pj4+PiBzZWUNCj4gPj4+PiBwcm9ncmVzcyBvbiBpdC4NCj4gPj4+Pj4N Cj4gPj4+Pg0KPiA+Pj4+IEhpIE1vcnRlbiwNCj4gPj4+Pg0KPiA+Pj4+IFllcyBpdCBicmluZ3Mg c29tZSBwZXJmb3JtYW5jZSwgYnV0IG5vdCB0byBnZW5lcmljIHVzZSBjYXNlLCBvbmx5DQo+ID4+ Pj4gdG8gc3BlY2lmaWMgYW5kIGNvbnN0cmFpbnQgdXNlIGNhc2UuDQo+ID4+Pg0KPiA+Pj4gSSBn b3QgdGhlIGltcHJlc3Npb24gdGhhdCB0aGUgc3VwcG9ydGVkIHVzZSBjYXNlIGlzIGEgcHJvbWlu ZW50IGFuZA0KPiA+Pj4gaW1wb3J0YW50DQo+ID4+IHVzZSBjYXNlLg0KPiA+Pj4NCj4gPj4NCj4g Pj4gQ2FuIHlvdSBwbGVhc2UgZ2l2ZSByZWFsIGxpZmUgc2FtcGxlcyBmb3IgdGhpcyB1c2UgY2Fz ZSwgb3RoZXIgdGhhbg0KPiA+PiBqdXN0IHNob3dpbmcgYmV0dGVyIHBlcmZvcm1hbmNlIG51bWJl ciBpbiB0aGUgdGVzdCBiZW5jaD8gVGhpcyBoZWxwcw0KPiA+PiB0byB1bmRlcnN0YW5kIHRoZSBy ZWFzb25pbmcgYmV0dGVyLg0KPiA+IFRoZSB2ZXJ5IGZpcnN0IHBhdGNoIHN0YXJ0ZWQgb2ZmIHdp dGggYSBjb25zdHJhaW5lZCBidXQgcHJvbWluZW50IHVzZSBjYXNlLg0KPiBUaG91Z2gsIERQVSBi YXNlZCBQQ0llIGNhcmRzIHJ1bm5pbmcgRFBESyBhcHBsaWNhdGlvbnMgd2l0aCAxIG9yIG1heCAy IHBvcnRzDQo+IGJlaW5nIHVzZWQgaW4gdG9ucyBvZiBkYXRhIGNlbnRlcnMgaXMgbm90IGEgc2Vj cmV0IGFueW1vcmUgYW5kIG5vdCBhIHNtYWxsIHVzZQ0KPiBjYXNlIHRoYXQgY2FuIGJlIGlnbm9y ZWQuDQo+ID4gSG93ZXZlciwgdGhlIGRlc2lnbiBvZiB0aGUgcGF0Y2ggaGFzIGNoYW5nZWQgc2ln bmlmaWNhbnRseSBmcm9tIHRoZW4uIE5vdw0KPiB0aGUgc29sdXRpb24gY2FuIGJlIGFwcGxpZWQg dG8gYW55IGdlbmVyaWMgdXNlIGNhc2UgdGhhdCB1c2VzIHJ1bi10by1jb21wbGV0aW9uDQo+IG1v ZGVsIG9mIERQREsuIGkuZS4gdGhlIG1hcHBpbmcgb2YgdGhlIFJYIGFuZCBUWCBwb3J0cyBjYW4g YmUgZG9uZQ0KPiBkeW5hbWljYWxseSBpbiB0aGUgZGF0YSBwbGFuZSB0aHJlYWRzLiBUaGVyZSBp cyBubyBuZWVkIG9mIHN0YXRpYyBjb25maWd1cmF0aW9uDQo+IGZyb20gY29udHJvbCBwbGFuZS4N Cj4gPg0KPiA+IE9uIHRoZSB0ZXN0IGJlbmNoLCB3ZSBuZWVkIHRvIG1ha2UgdXAgb3VyIG1pbmQu IFdoZW4gd2Ugc2VlDQo+IGltcHJvdmVtZW50cywgd2Ugc2F5IGl0IGlzIGp1c3QgYSB0ZXN0IGJl bmNoLiBPbiBvdGhlciBvY2Nhc2lvbnMgd2hlbiB0aGUgdGVzdA0KPiBiZW5jaCBkb2VzIG5vdCBz aG93IGFueSBpbXByb3ZlbWVudHMgKGJ1dCBpbXByb3ZlbWVudHMgYXJlIHNob3duIGJ5DQo+IG90 aGVyIG1ldHJpY3MpLCB3ZSBzYXkgdGhlIHRlc3QgYmVuY2ggZG9lcyBub3Qgc2hvdyBhbnkgaW1w cm92ZW1lbnRzLg0KPiA+DQo+ID4+DQo+ID4+PiBUaGlzIGlzIHRoZSBwcmltYXJ5IGFyZ3VtZW50 IGZvciBjb25zaWRlcmluZyBzdWNoIGEgY29tcGxleA0KPiA+Pj4gbm9uLWdlbmVyaWMNCj4gPj4g ZmVhdHVyZS4NCj4gPiBJIGFtIG5vdCBzdXJlIHdoYXQgaXMgdGhlIGNvbXBsZXhpdHkgaGVyZSwg Y2FuIHlvdSBwbGVhc2UgZWxhYm9yYXRlPw0KPiANCj4gSSBhbSBjb25zaWRlcmluZyBmcm9tIHVz ZXIgcGVyc3BlY3RpdmUuDQpUaGFua3MgZm9yIGNsYXJpZnlpbmcgRmVycnVoLg0KDQo+IA0KPiBP SywgRFBESyBpcyBhbHJlYWR5IGxvdyBsZXZlbCwgYnV0IGV0aGRldiBoYXMgb25seSBhIGhhbmRm dWwgb2YgZGF0YXBhdGggQVBJcyAoNg0KPiBvZiB0aGVtKSwgYW5kIG1haW4gb25lcyBhcmUgZWFz eSB0byBjb21wcmVoZW5kOg0KPiBydGVfZXRoX3J4X2J1cnN0KHBvcnRfaWQsIHF1ZXVlX2lkLCBy eF9wa3RzLCBuYl9wa3RzKTsNCj4gcnRlX2V0aF90eF9idXJzdChwb3J0X2lkLCBxdWV1ZV9pZCwg dHhfcGt0cywgbmJfcGt0cyk7DQo+IA0KPiBUaGV5IChtYWdpY2FsbHkpIFJ4L1R4IGJ1ZmZlcnMs IGVhc3kgdG8gZ3Jhc3AuDQpJIHRoaW5rIHRoZSBwa3RtYnVmIHBvb2wgcGFydCBpcyBtaXNzZWQg aGVyZS4gVGhlIHVzZXIgbmVlZHMgdG8gY3JlYXRlIGEgcGt0bWJ1ZiBwb29sIGJ5IGNhbGxpbmcg cnRlX3BrdG1idWZfcG9vbF9jcmVhdGUgYW5kIGhhcyB0byBwYXNzIHRoZSBjYWNoZV9zaXplIHBh cmFtZXRlci4NClRoaXMgcmVxdWlyZXMgdGhlIHVzZXIgdG8gdW5kZXJzdGFuZCB3aGF0IGlzIGEg Y2FjaGUsIHdoeSBpdCBpcyByZXF1aXJlZCBhbmQgaG93IGl0IGFmZmVjdHMgdGhlIHBlcmZvcm1h bmNlLg0KVGhlcmUgYXJlIGZ1cnRoZXIgY29tcGxleGl0aWVzIGFzc29jaWF0ZWQgd2l0aCBwa3Rt YnVmIHBvb2wgLSBjcmVhdGluZyBhIHBvb2wgd2l0aCBleHRlcm5hbCBwaW5uZWQgbWVtb3J5LCBj cmVhdGluZyBhIHBvb2wgd2l0aCBvcHMgbmFtZSBldGMuDQpTbywgcHJhY3RpY2FsbHksIHRoZSB1 c2VyIG5lZWRzIHRvIGJlIGF3YXJlIG9mIG1vcmUgZGV0YWlscyB0aGFuIGp1c3QgdGhlIFJYIGFu ZCBUWCBmdW5jdGlvbnMuDQoNCj4gDQo+IE1heWJlIHJ0ZV9ldGhfdHhfcHJlcGFyZSgpIGlzIGEg bGl0dGxlIGxlc3Mgb2J2aW91cyAod2h5L3doZW4gdG8gdXNlIGl0KSwgYnV0IHN0aWxsDQo+IEkg YmVsaWV2ZSBzaW1wbGUuDQo+IA0KPiBXaG9ldmVyIGxvb2tzIHRvIHRoZXNlIEFQSXMgY2FuIGZp Z3VyZSBvdXQgaG93IHRvIHVzZSBpbiB0aGUgYXBwbGljYXRpb24uDQo+IA0KPiBUaGUgb3RoZXIg dGhyZWUgaXMgcmVsYXRlZCB0byB0aGUgZGVzY3JpcHRvcnMgYW5kIEkgYW0gbm90IHN1cmUgYWJv dXQgdGhlaXIgdXNlLQ0KPiBjYXNlLCBJIGFzc3VtZSB0aGV5IGFyZSBtb3N0bHkgZ29vZCBmb3Ig ZGVidWdnaW5nLg0KPiANCj4gDQo+IEJ1dCBub3cgd2UgYXJlIGFkZGluZyBuZXcgZGF0YXBhdGgg QVBJczoNCj4gcnRlX2V0aF90eF9maWxsX3N3X3JpbmcocG9ydF9pZCwgcXVldWVfaWQsIHJ4cV9y ZWFybV9kYXRhKTsNCj4gcnRlX2V0aF9yeF9mbHVzaF9kZXNjcmlwdG9yKHBvcnRfaWQsIHF1ZXVl X2lkLCBuYl9yZWFybSk7DQo+IA0KPiBXaGVuIHlvdSB0YWxrIGFib3V0IFNXIHJpbmcgYW5kIHJl LWFybWluZyBkZXNjcmlwdG9ycyBJIGJlbGlldmUgeW91IHdpbGwgbG9vc2UNCj4gbW9zdCBvZiB0 aGUgdXNlcnMgYWxyZWFkeSwgZHJpdmVyIGRldmVsb3BlcnMgd2lsbCBrbm93IHdoYXQgaXQgaXMs IHlvdSB3aWxsIGtub3cNCj4gd2hhdCB0aGF0IGlzLCBidXQgcGVvcGxlIHdobyBhcmUgbm90IGNs b3NlIHRvIHRoZSBFdGhlcm5ldCBIVyB3b24ndC4NCkFncmVlLCB0aGUgbmFtZXMgY291bGQgYmUg YmV0dGVyLiBJIHBlcnNvbmFsbHkgZG8gbm90IHdhbnQgdG8gc2VwYXJhdGUgb3V0IHRoZXNlIHR3 byBBUElzIGFzIEkgZG8gbm90IHRoaW5rIGEgdXNlIGNhc2UgKHJlY2VpdmluZyBhbmQgdHJhbnNt aXR0aW5nIHBrdHMgYWNyb3NzIE5JQ3Mgb2YgZGlmZmVyZW50IHR5cGVzKSBleGlzdHMgdG8ga2Vl cCB0aGVtIHNlcGFyYXRlLiBCdXQsIHdlIGRpZCB0aGlzIGJhc2VkIG9uIGZlZWRiYWNrIGFuZCB0 byBtYWludGFpbiBhIGNsZWFuZXIgc2VwYXJhdGlvbiBiZXR3ZWVuIFJYIGFuZCBUWCBwYXRoLg0K V2Ugd2lsbCB0cnkgdG8gcHJvcG9zZSBuZXcgbmFtZXMgZm9yIHRoZXNlLg0KDQo+IA0KPiBBbmQg dGhlc2UgQVBJcyB3aWxsIGJlIHZlcnkgdmlzaWJsZSwgbm90IGxpa2Ugb25lIG9mIG1hbnkgY29u dHJvbCBwbGFuZSBkZXZfb3BzLg0KPiBTbyB0aGlzIGNhbiBjb25mdXNlIHVzZXJzIHdobyBhcmUg bm90IGZhbWlsaWFyIHdpdGggZGV0YWlscy4NCj4gDQo+IFVzYWdlIG9mIHRoZXNlIEFQSXMgY29t ZXMgd2l0aCByZXN0cmljdGlvbnMsIGl0IGlzIHBvc3NpYmxlIHRoYXQgYXQgc29tZQ0KPiBwZXJj ZW50YWdlIG9mIHVzZXJzIHdpbGwgbWlzcyB0aGVzZSByZXN0cmljdGlvbnMgb3IgbWlzcy11bmRl cnN0YW5kIHRoZW0gYW5kIHdpbGwNCj4gaGF2ZSBpc3N1ZXMuDQpBZ3JlZWQsIHRoZXJlIGFyZSBz ZXZlcmFsIGZlYXR1cmVzIGFscmVhZHkgd2l0aCByZXN0cmljdGlvbnMuDQoNCj4gDQo+IE9yIG1h bnkgbWF5IGJlIGludGltaWRhdGVkIGJ5IHRoZW0gYW5kIHN0YXkgYXdheSBmcm9tIHVzaW5nIHRo ZXNlIEFQSXMsDQo+IGxlYXZpbmcgdGhlbSBhcyBhIGJ1cmRlbiB0byBtYWludGFpbiwgdG8gdGVz dCwgdG8gZml4LiBUaGF0IGlzIHdoeSBJIHRoaW5rIGEgcmVhbCBsaWZlDQo+IHVzZWNhc2UgaXMg bmVlZGVkLCBpbiB0aGF0IGNhc2UgYXQgbGVhc3Qgd2Ugd2lsbCBrbm93IHNvbWUgY29uc3VtZXJz IHdpbGwgZml4IG9yDQo+IGxldCB1cyBrbm93IHdoZW4gdGhleSBnZXQgYnJva2VuLg0KPiANCj4g SXQgbWF5IGJlIHBvc3NpYmxlIHRvIGhpZGUgZGV0YWlscyB1bmRlciBkcml2ZXIgYW5kIHVzZXIg b25seSBzZXQgYW4gb2ZmbG9hZCBmbGFnLA0KPiBzaW1pbGFyIHRvIEZBU1RfRlJFRSwgYnV0IGlu IHRoYXQgY2FzZSBmZWF0dXJlIHdpbGwgbG9vc2UgZmxleGliaWxpdHkgYW5kIGl0IHdpbGwgYmUN Cj4gZXZlbiBtb3JlIHNwZWNpZmljLCBwZXJoYXBzIG1ha2luZyBpdCBsZXNzIHVzZWZ1bC4NCkFn cmVlLg0KDQo+IA0KPiANCj4gPiBJIHNlZSBvdGhlciBwYXRjaGVzL2Rlc2lnbnMgKGV4OiBwcm9h Y3RpdmUgZXJyb3IgcmVjb3ZlcnkpIHdoaWNoIGFyZSB3YXkgbW9yZQ0KPiBjb21wbGV4IHRvIHVu ZGVyc3RhbmQgYW5kIGNvbXByZWhlbmQuDQo+ID4NCj4gPj4+DQo+ID4+Pj4NCj4gPj4+PiBBbmQg Y2hhbmdlcyBhcmUgcmVsYXRpdmVseSBpbnZhc2l2ZSBjb21wYXJpbmcgdGhlIHVzZWNhc2UgaXQN Cj4gPj4+PiBzdXBwb3J0cywgbGlrZSBpdCBhZGRzIG5ldyB0d28gaW5saW5lIGRhdGFwYXRoIGZ1 bmN0aW9ucyBhbmQgYSBuZXcNCj4gZGV2X29wcy4NCj4gPj4+Pg0KPiA+Pj4+IEkgYW0gd29ycmll ZCB0aGUgdW5uZWNlc3NhcnkgY29tcGxleGl0eSBhbmQgcG9zc2libGUgcmVncmVzc2lvbnMgaW4N Cj4gPj4+PiB0aGUgZnVuZGFtZW50YWwgYW5kIHNpbXBsZSBwYXJ0cyBvZiB0aGUgcHJvamVjdCwg d2l0aCBhIGdvb2QNCj4gPj4+PiBpbnRlbnRpb24gdG8gZ2FpbiBhIGZldyBwZXJjZW50YWdlIHBl cmZvcm1hbmNlIGluIGEgc3BlY2lmaWMNCj4gPj4+PiB1c2VjYXNlLCBjYW4gaHVydCB0aGUgcHJv amVjdC4NCj4gPiBJIGFncmVlIHRoYXQgd2UgYXJlIHRvdWNoaW5nIHNvbWUgZnVuZGFtZW50YWwg cGFydHMgb2YgdGhlIHByb2plY3QuIEJ1dCwgd2UNCj4gYWxzbyBuZWVkIHRvIHJlYWxpemUgdGhh dCB0aG9zZSBmdW5kYW1lbnRhbCBwYXJ0cyB3ZXJlIG5vdCBkZXZlbG9wZWQgb24NCj4gYXJjaGl0 ZWN0dXJlcyB0aGF0IGhhdmUgam9pbmVkIHRoZSBwcm9qZWN0IHdheSBsYXRlci4gU2ltaWxhcmx5 LCB0aGUgdXNlIGNhc2VzDQo+IGhhdmUgZXZvbHZlZCBzaWduaWZpY2FudGx5IGZyb20gdGhlIG9y aWdpbmFsIGludGVuZGVkIHVzZSBjYXNlcy4gV2UgY2Fubm90IGhvbGQNCj4gb24gdG8gdGhvc2Ug ZnVuZGFtZW50YWwgZGVzaWducyBpZiB0aGV5IGFmZmVjdCB0aGUgcGVyZm9ybWFuY2Ugb24gb3Ro ZXINCj4gYXJjaGl0ZWN0dXJlcyB3aGlsZSBhZGRyZXNzaW5nIHByb21pbmVudCBuZXcgdXNlIGNh c2VzLg0KPiA+IFBsZWFzZSBub3RlIHRoYXQgdGhpcyBwYXRjaCBkb2VzIG5vdCBicmVhayBhbnkg ZXhpc3RpbmcgZmVhdHVyZXMgb3IgYWZmZWN0IHRoZWlyDQo+IHBlcmZvcm1hbmNlIGluIGFueSBu ZWdhdGl2ZSB3YXkuIFRoZSBnZW5lcmljIGFuZCBvcmlnaW5hbGx5IGludGVuZGVkIHVzZSBjYXNl cw0KPiBjYW4gYmVuZWZpdCBmcm9tIHRoaXMgZmVhdHVyZS4NCj4gPg0KPiA+Pj4+DQo+ID4+Pj4N Cj4gPj4+PiBJIGNhbiBzZWUgdGhpcyBpcyBjb21wYXJlZCB0byBNQlVGX0ZBU1RfRlJFRSBmZWF0 dXJlLCBidXQNCj4gPj4+PiBNQlVGX0ZBU1RfRlJFRSBpcyBqdXN0IGFuIG9mZmxvYWQgYmVuZWZp dGluZyBmcm9tIGV4aXN0aW5nIG9mZmxvYWQNCj4gPj4+PiBpbmZyYXN0cnVjdHVyZSwgd2hpY2gg cmVxdWlyZXMgdmVyeSBzbWFsbCB1cGRhdGUgYW5kIGxvZ2ljYWxseQ0KPiA+Pj4+IGNoYW5nZSBp biBhcHBsaWNhdGlvbiBhbmQgc2ltcGxlIHRvIGltcGxlbWVudCBpbiB0aGUgZHJpdmVycy4gU28s DQo+ID4+Pj4gdGhleSBhcmUgbm90IHNhbWUgZnJvbSBjb21wbGV4aXR5IHBlcnNwZWN0aXZlLg0K PiA+Pj4+DQo+ID4+Pj4gQnJpZWZseSwgSSBhbSBub3QgY29tZm9ydGFibGUgd2l0aCB0aGlzIGNo YW5nZSwgSSB3b3VsZCBsaWtlIHRvIHNlZQ0KPiA+Pj4+IGFuIGV4cGxpY2l0IGFwcHJvdmFsIGFu ZCBjb2RlIHJldmlldyBmcm9tIHRlY2hib2FyZCB0byBwcm9jZWVkLg0KPiA+Pj4NCj4gPj4+IEkg YWdyZWUgdGhhdCB0aGUgY29tcGxleGl0eSBpcyB2ZXJ5IGhpZ2gsIGFuZCB0aHVzIHJlcXVpcmVz IGV4dHJhDQo+IGNvbnNpZGVyYXRpb24uDQo+ID4+IFlvdXIgc3VnZ2VzdGVkIHRlY2hib2FyZCBy ZXZpZXcgYW5kIGFwcHJvdmFsIHByb2Nlc3Mgc2VlbXMgbGlrZSBhDQo+ID4+IGdvb2Qgc29sdXRp b24uDQo+ID4gV2UgY2FuIGFkZCB0byB0aGUgYWdlbmRhIGZvciB0aGUgbmV4dCBUZWNoYm9hcmQg bWVldGluZy4NCj4gPg0KPiA+Pj4NCj4gPj4+IEFuZCB0aGUgcGVyZm9ybWFuY2UgYmVuZWZpdCBv ZiBkaXJlY3QgcmVhcm0gc2hvdWxkIGJlIGNvbXBhcmVkIHRvDQo+ID4+PiB0aGUNCj4gPj4gcGVy Zm9ybWFuY2UgdXNpbmcgdGhlIG5ldyB6ZXJvLWNvcHkgbWVtcG9vbCBBUEkuDQo+ID4+Pg0KPiA+ Pj4gLU1vcnRlbg0KPiA+Pj4NCg0K