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 F2AB5A0524; Tue, 13 Apr 2021 03:26:59 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7E71416096A; Tue, 13 Apr 2021 03:26:59 +0200 (CEST) Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-eopbgr770050.outbound.protection.outlook.com [40.107.77.50]) by mails.dpdk.org (Postfix) with ESMTP id 00AFD160968 for ; Tue, 13 Apr 2021 03:26:57 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=R898c/RtBkFkIrFI1tCO+fwBlkDH76osgcPEh354Qs/HnqAYXErFBRfuZIXwKt980iwz2KDUKiGyCKvwaDNmTGhm+us+AYlJ07KV2abYr0hiE7f4T2yH4y8MnFGv9m4totGmZ7mTI/b7LKuhTanivbNsCRVJIiTtm3e9NrvaZ3qV+WcFO4TzAz1MV2kV9AcmwHKk/2fppZ14jFGQaAveb+nkgHx2d/mCeOzjwDxo0IB3NgAJJhAE6LQDqQsvhvYm72n+qJF544WDvYjfrJ3W+kQQjnzjdcRyoCZpFy0yMAacoXqxESATtbWjhpYhrDnY7YHDJPRcnUM+PNF5K+O8dw== 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=tpR6H1izV2DOaeeB+E+75WwF8kfYVi0on7bnEbYEu1w=; b=WqrG5XoNOVwZ2S8dknb+mo5/s3/nBL/+jrpKWX2LI61M4Nrs1kLnQDSads4uchRS14gPx9qsKcRJH003O09SNFEEj6yeUIDlwiaqkvYpWbG/7BUVsKk7goIg0uvBKnPiHGgV+weKG4mGtRIvjPIzzHZRZXfeYzbF8XFT+n/VEz0gcZ1YKBVUw6ShNvXiBbT4joC3XWWUqOqa0AOlUw7ZKNgNnAF0M5Z3Ki7W4YXSTM8lmJC855uV1gfA4vPMds9r6r6o4N9twjnhYAy1kYBjSX9XyeZ1YT8qEsYSM5p681sfNvGgyOZeVLVDBC49CgPxTw+88BBnFSmwHWqk5vFlNg== 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=tpR6H1izV2DOaeeB+E+75WwF8kfYVi0on7bnEbYEu1w=; b=syOLrNW5YkJ6gXLS7lE1vBALHeSChmIxVMtLgYYSc9MdmbJ4iJ7IYemMiP4vjRkEvuzzRehM7VsoE6FFwfhyBHyq67dxeLFO+y5f+uGBDQUbvtqz+YGh8+gAd/odlm7doF51/SX4xf8+2xaPg1AjKzqI1en2Y6iMCSltsm5kjF3zUu3r5AtPnxnmO695CfFQxsjoY+rbTRVY3bd9VXzaqGq3O1oKVP8eownYeQoi9jWpcQsVQbdS2DD8nDpR2GoIObWc65Sr3FWNdLwSPw/Qfsdr0Q2tmG1z8q/XY/DlBveNuDPkg8b4TYcbwOxOwNpOMRTfSO06rLBoggAQUa699w== Received: from MN2PR12MB2909.namprd12.prod.outlook.com (2603:10b6:208:103::13) by MN2PR12MB3055.namprd12.prod.outlook.com (2603:10b6:208:d2::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.22; Tue, 13 Apr 2021 01:26:56 +0000 Received: from MN2PR12MB2909.namprd12.prod.outlook.com ([fe80::7cbc:e499:e936:7408]) by MN2PR12MB2909.namprd12.prod.outlook.com ([fe80::7cbc:e499:e936:7408%7]) with mapi id 15.20.4020.022; Tue, 13 Apr 2021 01:26:56 +0000 From: Bing Zhao To: Ferruh Yigit , Ori Kam , NBU-Contact-Thomas Monjalon , "andrew.rybchenko@oktetlabs.ru" , Matan Azrad , Slava Ovsiienko CC: "dev@dpdk.org" , "ajit.khaparde@broadcom.com" , Gregory Etelson , Andrey Vesnovaty Thread-Topic: [PATCH v2 1/4] ethdev: introduce indirect action APIs Thread-Index: AQHXL9P1Z8z016cm1kCoFk9DKRrVn6qxp8WA Date: Tue, 13 Apr 2021 01:26:55 +0000 Message-ID: References: <1617940481-125528-1-git-send-email-bingz@nvidia.com> <1618063428-206842-1-git-send-email-bingz@nvidia.com> <1618063428-206842-2-git-send-email-bingz@nvidia.com> <728b94bb-b5fa-37bd-ecc8-411fcac1465f@intel.com> In-Reply-To: <728b94bb-b5fa-37bd-ecc8-411fcac1465f@intel.com> Accept-Language: en-US, zh-CN 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: [154.18.175.67] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 598b4e8e-5fb3-4292-0f76-08d8fe1b39cb x-ms-traffictypediagnostic: MN2PR12MB3055: 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: ulEdCtnP6IOvHDr5FIvysKkOtFEsN90qtzGg+kWxXw5nY0388ZveFNnKnz66vsT9Iyemd9Y2N40UsgC3N9KZOjLob4VNA7Cgs7HhmN/BQf+4lejmF65vZCNSIrFEW3SPQl/fWdCzvisr9j10LMcD/8yvstgCZw7cTyGFKQkezetc6mngBSnaUTNx9MgZ+phSsxJpxVif4NvJ2R/kXQWpeVgzoGI7Dcas0O39QdnHA+7aDnBPLgCFw09yrUGtMvKwqprCYEN2i5rfVRU23/rg9igqMUGrGzzaxpLzSss+PzxKufzixVhhfQT8bZUQ05RG4N+jz08dDaNfnzW9XIkXF4kBT8VtCgQLXZcOF7yNezPudqcIJDFug7FMVTUbxglcVeUUJ5yn6+PW1wKBAz4zf2ZNZv8qqMnYaMUW5oYeNo8pSurlx1woRqtemNvrwp+d+/kDvusXeIxI/DJBfwch/aSzmiGz801s3plrZAVyciHu5U4fHDoeLl/b/ryMj9xoeV9OtlssOsd7WUFxzQp1vHjJH6sQpqVlsR62p5h2i9CyFGxVeW9gX+65E4TsNx/yZ0tU09KL9W8UPHs5yiOWZHbOS5k1bvbRaNQNm9YvMEw= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR12MB2909.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(396003)(39860400002)(376002)(346002)(136003)(38100700002)(71200400001)(66946007)(76116006)(53546011)(66476007)(478600001)(6506007)(66556008)(186003)(4326008)(122000001)(66446008)(33656002)(55016002)(64756008)(5660300002)(52536014)(8936002)(8676002)(7696005)(107886003)(6636002)(83380400001)(54906003)(86362001)(110136005)(9686003)(26005)(316002)(2906002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: =?utf-8?B?WVNFR202dW10OGVyS2JFcitsWWFIdnpFajkwTFZENHVSTFlWN0JOTTJ3aVdC?= =?utf-8?B?eGYvRmxMMndlaUVTR2ZsOXk5bWlzUnZLNGVrcGJPdGlBZWtkNCtuNXljUmFC?= =?utf-8?B?QitiRUM1VTdHM2pieE5lM3JONHE0VVdIVEFwaVBDenJhZUhjcXUzSlc4SzQw?= =?utf-8?B?UDNtcHAxcno5NUZKYURNMnBFdWI2TGlRbHN1WEZmVmQwcFpEVks1elRNakIx?= =?utf-8?B?Y2FIdHVISW82bWwyeGxvQjlTWHArMllOYXIxb01QTktwWmZiUk9rckwrTzNO?= =?utf-8?B?Q3h3THl3T29jckNLc0FXOFpsNVd3M00rbGpuczc1WG5jNmUrb0JuMG16K0lR?= =?utf-8?B?Z0E0aFJvampmczlPRGVvazZmRWxBanNmTUhNVmFKZk1HdUpCUGRvVXYzN3g0?= =?utf-8?B?L2xMQjNaK28vQnY1Zjg5VWhwQlFPemJKN1BuRWtUaG5WNUlrOFNid3lFbnpw?= =?utf-8?B?Nmo2Wk9XbitSUzQ5S2p4VHNyVlpSVXdrMlhwRU9HbGJaNXl2RzUrSWxPSmNo?= =?utf-8?B?Yjh1M2M1MkpDVVNnN1hOVFhQMUlicklrTHY5Wll6Ykk5Nks2MTBGOEtOLy92?= =?utf-8?B?OTl1YlZucytTYldNeldzYW55QmhqR3l2UGJ6R0Q2NXdLWHF2UmRzenhLdmZm?= =?utf-8?B?OHh0L2puenRKRjVpZkJCMEluVytBd3RUNjdtcVhKSjNLU1NzVEljSU9ISy9z?= =?utf-8?B?RTFzM09rVkROY3p4SktxMzV1aDd2MXJIUlhMMzJ6Uk9zRWZrYTdzWUE4VWpL?= =?utf-8?B?MEJpUkU4eTduQ2ZadW1INEhzQTVHOFJYRVhpUEZvVUtlOE9RaG51b2duYnhx?= =?utf-8?B?TkxRZVJrRHRhSnU5OWNIQkpYOTRXQ2RLTUNQTjNDS2ozWVRTYzB6aGtDWW9B?= =?utf-8?B?TWlRMkMreTcwRzJVWFlaVktIQnhldWh3NGo0dnZ5emJRa0xLc2lYdUdCeFdt?= =?utf-8?B?RCsxR2dyNkdJbDRKTnlPOFlyREQ2aHJRNFp4aGJIWFZ1TUxNemdaY1ErVURY?= =?utf-8?B?RzVGT3lZNXQ2TnNhYW9obUVGcXA0MXF1Z2RlL0VyeE54YUc3NjJIUnNGbzNp?= =?utf-8?B?S0JFYjF2eEthM0VyS0dKSmo5SU5zVlpuNFU2SnJkaTFBeWtDUWRpTDhFaTF2?= =?utf-8?B?UnVncElXbEdtTHJ0QXk5ckQ2RXozTU9CSmc1L29EQm91SzhiWlBYbldDcFps?= =?utf-8?B?S0lQRnhpS25PWEEwbFlVeElTcnlyZk1Wd2pXSUtwOUxnSFBRMlg5T1VaRFpX?= =?utf-8?B?MzFEV1N4RHZBOG05eXZPR1cwdXZhTDJiaDZQZDBEQVRsSkQ5TWRZVVowbkZx?= =?utf-8?B?WHFtZHpST3p1bktKUHVsejI4WTJhQ0FkaXpvQ2ZqK2lFdGRPUXdvVFhqSTJN?= =?utf-8?B?azErTXJ2NHd0ekxiMGpncXNDb0xSeTk2Q2lqZkZkK2pGR0JWNXpEdDRlNkRS?= =?utf-8?B?djJzYnVOa1kvYWUxbS9BQStKQlZhTEx6NGJLNkYrUE93ei84WFBLSXFJSU9w?= =?utf-8?B?S0g3S1FyY2RuMVdUdU5hdDRRL25BTjdQVmYvRlE3QTZGcjBWTHZSQkt0RVUw?= =?utf-8?B?N29hcHg3UGRsOFF1eFZldnlCbi8xOG9vREIrYzZGWDRDUXlKVUJvaWVUQ0N5?= =?utf-8?B?TDUxbjJmaDhxNS9NZWRuT01rWmpYd0xqOVI5d3NKNjUwcUFIN05GT2gwOHUy?= =?utf-8?B?c1lxZzB5WjQ4VVRYRmQycTNDNTZTeEFkRzhlWjU2c0hZY2JBVlJpck5KMHpZ?= =?utf-8?Q?gljkLaeIPZSneeNThFW8NAlnDtyXwlgqHDNXpn8?= 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: MN2PR12MB2909.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 598b4e8e-5fb3-4292-0f76-08d8fe1b39cb X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Apr 2021 01:26:55.8817 (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: kv3qzr9XqLHPvbs2XwAfKtDaLq4nWSai/G2jooN+igyowPeuVUDQVUMDepnBtXvyhio0ba7v4cF8pTYJd5H+pA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB3055 Subject: Re: [dpdk-dev] [PATCH v2 1/4] ethdev: introduce indirect action APIs 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 aCBZaWdpdCA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT4NCj4gU2VudDogVHVlc2RheSwgQXByaWwg MTMsIDIwMjEgMzo0MiBBTQ0KPiBUbzogQmluZyBaaGFvIDxiaW5nekBudmlkaWEuY29tPjsgT3Jp IEthbSA8b3Jpa2FAbnZpZGlhLmNvbT47IE5CVS0NCj4gQ29udGFjdC1UaG9tYXMgTW9uamFsb24g PHRob21hc0Btb25qYWxvbi5uZXQ+Ow0KPiBhbmRyZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydTsg TWF0YW4gQXpyYWQgPG1hdGFuQG52aWRpYS5jb20+OyBTbGF2YQ0KPiBPdnNpaWVua28gPHZpYWNo ZXNsYXZvQG52aWRpYS5jb20+DQo+IENjOiBkZXZAZHBkay5vcmc7IGFqaXQua2hhcGFyZGVAYnJv YWRjb20uY29tOyBHcmVnb3J5IEV0ZWxzb24NCj4gPGdldGVsc29uQG52aWRpYS5jb20+OyBBbmRy ZXkgVmVzbm92YXR5IDxhbmRyZXl2QG52aWRpYS5jb20+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0gg djIgMS80XSBldGhkZXY6IGludHJvZHVjZSBpbmRpcmVjdCBhY3Rpb24gQVBJcw0KPiANCj4gRXh0 ZXJuYWwgZW1haWw6IFVzZSBjYXV0aW9uIG9wZW5pbmcgbGlua3Mgb3IgYXR0YWNobWVudHMNCj4g DQo+IA0KPiBPbiA0LzEwLzIwMjEgMzowMyBQTSwgQmluZyBaaGFvIHdyb3RlOg0KPiA+IFJpZ2h0 IG5vdywgcnRlX2Zsb3dfc2hhcmVkX2FjdGlvbl8qIEFQSXMgYXJlIHVzZWQgZm9yIHNvbWUgc2hh cmVkDQo+ID4gYWN0aW9ucywgbGlrZSBSU1MsIGNvdW50LiBUaGUgc2hhcmVkIGFjdGlvbiBzaG91 bGQgYmUgY3JlYXRlZA0KPiBiZWZvcmUNCj4gPiB1c2luZyBpdCBpbnNpZGUgYSBmbG93LiBUaGVz ZSBzaGFyZWQgYWN0aW9ucyBzb21ldGltZXMgYXJlIG5vdA0KPiByZWFsbHkNCj4gPiBzaGFyZWQg YnV0IGp1c3Qgc29tZSBpbmRpcmVjdCBhY3Rpb25zIGRlY291cGxlZCBmcm9tIGEgZmxvdy4NCj4g Pg0KPiA+IFRoZSBuZXcgZnVuY3Rpb25zIHJ0ZV9mbG93X2FjdGlvbl9oYW5kbGVfKiBhcmUgYWRk ZWQgdG8gcmVwbGFjZQ0KPiB0aGUNCj4gPiBjdXJyZW50IHNoYXJlZCBmdW5jdGlvbnMgcnRlX2Zs b3dfc2hhcmVkX2FjdGlvbl8qLg0KPiA+DQo+ID4gVGhlcmUgYXJlIHR3byB0eXBlcyBvZiBmbG93 IGFjdGlvbnM6DQo+ID4gMS4gdGhlIGRpcmVjdCAobm9ybWFsKSBhY3Rpb25zIHRoYXQgY291bGQg YmUgY3JlYXRlZCBhbmQgc3RvcmVkDQo+ID4gICAgIHdpdGhpbiBhIGZsb3cgcnVsZS4gU3VjaCBh Y3Rpb24gaXMgdGllZCB0byBpdHMgZmxvdyBydWxlIGFuZA0KPiA+ICAgICBjYW5ub3QgYmUgcmV1 c2VkLg0KPiA+IDIuIHRoZSBpbmRpcmVjdCBhY3Rpb24sIGluIHRoZSBwYXN0LCBuYW1lZCBzaGFy ZWRfYWN0aW9uLiBJdCBpcw0KPiA+ICAgICBjcmVhdGVkIGZyb20gYSBkaXJlY3QgYWN0aW9uaSwg bGlrZSBjb3VudCBvciByc3MsIGFuZCB0aGVuDQo+IHVzZWQNCj4gPiAgICAgaW4gdGhlIGZsb3cg cnVsZXMgd2l0aCBhbiBvYmplY3QgaGFuZGxlLiBUaGUgUE1EIHdpbGwgdGFrZQ0KPiBjYXJlDQo+ ID4gICAgIG9mIHRoZSByZXRyaWV2ZSBmcm9tIGluZGlyZWN0IGFjdGlvbiB0byB0aGUgZGlyZWN0 IGFjdGlvbg0KPiA+ICAgICB3aGVuIGl0IGlzIHJlZmVyZW5jZWQuDQo+ID4NCj4gPiBUaGUgaW5k aXJlY3QgYWN0aW9uIGlzIGFjY2Vzc2VkICh1cGRhdGUgLyBxdWVyeSkgdy9vIGFueSBmbG93IHJ1 bGUsDQo+ID4ganVzdCB2aWEgdGhlIGFjdGlvbiBvYmplY3QgaGFuZGxlLiBGb3IgZXhhbXBsZSwg d2hlbiBxdWVyeWluZyBvcg0KPiA+IHJlc2V0dGluZyBhIGNvdW50ZXIsIGl0IGNvdWxkIGJlIGRv bmUgb3V0IG9mIGFueSBmbG93IHVzaW5nIHRoaXMNCj4gPiBjb3VudGVyLCBidXQgb25seSB0aGUg aGFuZGxlIG9mIHRoZSBjb3VudGVyIGFjdGlvbiBvYmplY3QgaXMNCj4gcmVxdWlyZWQuDQo+ID4g VGhlIGluZGlyZWN0IGFjdGlvbiBvYmplY3QgY291bGQgYmUgc2hhcmVkIGJ5IGRpZmZlcmVudCBm bG93cyBvcg0KPiB1c2VkDQo+ID4gYnkgYSBzaW5nbGUgZmxvdywgZGVwZW5kaW5nIG9uIHRoZSBk aXJlY3QgYWN0aW9uIHR5cGUgYW5kIHRoZQ0KPiA+IHJlYWwtbGlmZSByZXF1aXJlbWVudHMuDQo+ ID4gVGhlIGhhbmRsZSBvZiBhbiBpbmRpcmVjdCBhY3Rpb24gb2JqZWN0IGlzIG9wYXF1ZSBhbmQg ZGVmaW5lZCBpbg0KPiBlYWNoDQo+ID4gZHJpdmVyIGFuZCBwb3NzaWJseSBkaWZmZXJlbnQgcGVy IGRpcmVjdCBhY3Rpb24gdHlwZS4NCj4gPg0KPiA+IFRoZSBvbGQgbmFtZSAic2hhcmVkIiBpcyBp bXByb3BlciBpbiBhIHNlbnNlIGFuZCBzaG91bGQgYmUNCj4gcmVwbGFjZWQuDQo+ID4NCj4gPiBB bGwgdGhlIGNvbW1hbmQgbGluZXMgaW4gdGVzdHBtZCBhcHBsaWNhdGlvbiB3aXRoICJzaGFyZWRf YWN0aW9uKiINCj4gPiBhcmUgcmVwbGFjZWQgd2l0aCAiaW5kaXJlY3RfYWN0aW9uKiIuDQo+ID4N Cj4gPiBUaGUgcGFyYW1ldGVyIG9mICJ1cGRhdGUiIGludGVyZmFjZSBpcyBhbHNvIGNoYW5nZWQu IEEgZ2VuZXJhbA0KPiBwb2ludGVyDQo+ID4gd2lsbCByZXBsYWNlIHRoZSBydGVfZmxvd19hY3Rp b24gc3RydWN0IHBvaW50ZXIgZHVlIHRvIHRoZQ0KPiA+IGZhY3RzOg0KPiA+IDEuIFNvbWUgYWN0 aW9uIG1heSBub3Qgc3VwcG9ydCBmaWVsZHMgdXBkYXRpbmcuIEluIHRoZSBleGFtcGxlIG9mDQo+ IGENCj4gPiAgICAgY291bnRlciwgdGhlIG9ubHkgInVwZGF0ZSIgc3VwcG9ydGVkIHNob3VsZCBi ZSB0aGUgcmVzZXQuIFNvDQo+ID4gICAgIHBhc3NpbmcgYSBydGVfZmxvd19hY3Rpb24gc3RydWN0 IHBvaW50ZXIgaXMgbWVhbmluZ2xlc3MgYW5kDQo+ID4gICAgIHRoZXJlIGlzIGV2ZW4gbm8gc3Vj aCBjb3JyZXNwb25kaW5nIGFjdGlvbiBzdHJ1Y3QuIFdoYXQncyBtb3JlLA0KPiA+ICAgICBpZiBt b3JlIHRoYW4gb25lIG9wZXJhdGlvbnMgc2hvdWxkIGJlIHN1cHBvcnRlZCwgZm9yIHNvbWUNCj4g b3RoZXINCj4gPiAgICAgYWN0aW9uLCBzdWNoIHBvaW50ZXIgcGFyYW1ldGVyIG1heSBub3QgbWVl dCB0aGUgbmVlZC4NCj4gPiAyLiBTb21lIGFjdGlvbiBtYXkgbmVlZCBjb25kaXRpb25hbCBvciBw YXJ0aWFsIHVwZGF0ZSwgdGhlIGN1cnJlbnQNCj4gPiAgICAgcGFyYW1ldGVyIHdpbGwgbm90IHBy b3ZpZGUgdGhlIGFiaWxpdHkgdG8gaW5kaWNhdGUgd2hpY2gNCj4gcGFydChzKQ0KPiA+ICAgICB0 byB1cGRhdGUuDQo+ID4gICAgIEZvciBkaWZmZXJlbnQgdHlwZXMgb2YgaW5kaXJlY3QgYWN0aW9u IG9iamVjdHMsIHRoZSBwb2ludGVyDQo+IGNvdWxkDQo+ID4gICAgIGVpdGhlciBiZSB0aGUgc2Ft ZSBvZiBydGVfZmxvd19hY3Rpb24qIHN0cnVjdCAtIGluIG9yZGVyIG5vdA0KPiB0bw0KPiA+ICAg ICBicmVhayB0aGUgY3VycmVudCBkcml2ZXIgaW1wbGVtZW50YXRpb24sIG9yIHNvbWUgd3JhcHBl cg0KPiA+ICAgICBzdHJ1Y3R1cmVzIHdpdGggYml0cyBhcyBtYXNrcyB0byBpbmRpY2F0ZSB3aGlj aCBwYXJ0IHRvIGJlDQo+ID4gICAgIHVwZGF0ZWQsIGRlcGVuZGluZyBvbiByZWFsIG5lZWRzIG9m IHRoZSBjb3JyZXNwb25kaW5nIGRpcmVjdA0KPiA+ICAgICBhY3Rpb24uIEZvciBkaWZmZXJlbnQg ZGlyZWN0IGFjdGlvbnMsIHRoZSBzdHJ1Y3R1cmVzIG9mDQo+IGluZGlyZWN0DQo+ID4gICAgIGFj dGlvbiBvYmplY3RzIHVwZGF0aW5nIHdpbGwgYmUgZGlmZmVyZW50Lg0KPiA+DQo+ID4gQWxsIHRo ZSB1bmRlcmxheWVyIFBNRCBjYWxsYmFja3Mgd2lsbCBiZSBtb3ZlZCB0byB0aGVzZSBuZXcgQVBJ cy4NCj4gPg0KPiA+IFRoZSBSVEVfRkxPV19BQ1RJT05fVFlQRV9TSEFSRUQgaXMga2VwdCBmb3Ig bm93IGluIG9yZGVyIG5vdCB0bw0KPiBicmVhaw0KPiA+IHRoZSBBQkkuIEFsbCB0aGUgaW1wbGVt ZW50YXRpb25zIGFyZSBjaGFuZ2VkIGJ5IHVzaW5nDQo+ID4gUlRFX0ZMT1dfQUNUSU9OX1RZUEVf SU5ESVJFQ1QuDQo+ID4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBCaW5nIFpoYW8gPGJpbmd6QG52aWRp YS5jb20+DQo+ID4gLS0tDQo+ID4gICBkb2MvZ3VpZGVzL3JlbF9ub3Rlcy9yZWxlYXNlXzIxXzA1 LnJzdCB8ICAgMyArDQo+ID4gICBsaWIvbGlicnRlX2V0aGRldi9ydGVfZmxvdy5jICAgICAgICAg ICB8ICA1NiArKysrKysrKy0tLS0tLS0tDQo+ID4gICBsaWIvbGlicnRlX2V0aGRldi9ydGVfZmxv dy5oICAgICAgICAgICB8IDExOA0KPiArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0N Cj4gPiAgIGxpYi9saWJydGVfZXRoZGV2L3J0ZV9mbG93X2RyaXZlci5oICAgIHwgIDI2ICsrKyst LS0tDQo+ID4gICBsaWIvbGlicnRlX2V0aGRldi92ZXJzaW9uLm1hcCAgICAgICAgICB8ICAgOCAr LS0NCj4gDQo+IElzbid0IHRoZXJlIGFueSBkb2N1bWVudGF0aW9uIHRvIHVwZGF0ZSB3aXRoIHRo aXMgY2hhbmdlPw0KDQpEbyB5b3UgbWVhbiB0aGUgcmVsZWFzZSBub3RlPyBJIG9ubHkgdXBkYXRl ZCB0aGUgMjBfMDEgcmVsZWFzZSBub3RlIHBhcnQuDQoNCj4gDQo+IElmIHRoZSBzaGFyZWQgYWN0 aW9uIEFQSSBpcyBub3QgZG9jdW1lbnRlZCBhdCBhbGwsIGNhbiB5b3UgcGxlYXNlDQo+IGFkZCBk b2N1bWVudGF0aW9uIGZvciB0aGUgYWN0aW9uIGhhbmRsZSBBUEk/DQoNCkluIHRoZSB0ZXN0cG1k IHVzYWdlIGd1aWRlLCBJIGZvdW5kIHNvbWUgZGVzY3JpcHRpb24gYW5kIHVwZGF0ZSBpdCB0b2dl dGhlciB3aXRoIHRoZSB0ZXN0cG1kIHVwZGF0ZS4NCkkgd2lsbCBjaGVjayBpZiB0aGVyZSBpcyBh bm90aGVyIHBsYWNlIHRvIHVwZGF0ZSBvciBhZGQuDQoNClRoYW5rcw0KDQpCUi4gQmluZw0K